Skip to content

Releases: commercetools/commercetools-dotnet-core-sdk-v2

12.7.0

27 Feb 08:40
105dad2
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #408
  • Update generated SDKs by @ct-sdks in #409
  • Update generated SDKs by @ct-sdks in #410
  • Update generated SDKs by @ct-sdks in #411
  • [DEVX-551] add json converter for ProductTailoringAttributes by @jenschude in #413

History changes

Removed Enum(s)
  • ⚠️ removed enum setAsssetKey from type UpdateType
Added Enum(s)
  • added enum setAssetKey to type UpdateType

Full Changelog: 12.6.0...12.7.0

12.6.0

13 Feb 11:44
16c56a3
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #404
  • Update generated SDKs by @ct-sdks in #405
  • Update generated SDKs by @ct-sdks in #406
  • Make custom fields queryable through DSL by @jenschude in #407

Api changes

Removed Type(s)
  • ⚠️ removed type AssociateRoleNameChangedMessage
  • ⚠️ removed type AssociateRoleNameChangedMessagePayload
Added Type(s)
  • added type AssociateRoleNameSetMessage
  • added type AssociateRoleNameSetMessagePayload

Fixes

The AssociateRoleNameChangedMessage has been renamed to AssociateRoleNameSetMessage to be consistent with the message type value.

Full Changelog: 12.5.0...12.6.0

12.5.0

10 Feb 09:25
73d59b1
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #400
  • feat(api): Option to not fail on head calls by @sommmen in #396
  • Update generated SDKs by @ct-sdks in #401
  • Update generated SDKs by @ct-sdks in #402
  • Update generated SDKs by @ct-sdks in #403

Api changes

Removed Type(s)
  • ⚠️ removed type ProductSearchFacetScope
Added Type(s)
  • added type ShoppingListSetBusinessUnitAction
Added Property(s)
  • added property businessUnit to type ShoppingList
  • added property businessUnit to type ShoppingListDraft

New Contributors

Full Changelog: 12.4.0...12.5.0

12.4.0

03 Feb 10:04
bfe96f1
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #398
  • Update generated SDKs by @ct-sdks in #399

Full Changelog: 12.3.0...12.4.0

12.3.0

28 Jan 13:48
fc6d0ef
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #394
  • Update generated SDKs by @ct-sdks in #395
  • add custom field helper methods by @jenschude in #397

Full Changelog: 12.2.0...12.3.0

12.2.0

22 Jan 15:06
7c8818f
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #384
  • Update generated SDKs by @ct-sdks in #385
  • Update generated SDKs by @ct-sdks in #386
  • Update generated SDKs by @ct-sdks in #387
  • Update generated SDKs by @ct-sdks in #388
  • Update generated SDKs by @ct-sdks in #389
  • Update generated SDKs by @ct-sdks in #390
  • Update generated SDKs by @ct-sdks in #391
  • Update generated SDKs by @ct-sdks in #392
  • Update generated SDKs by @ct-sdks in #393

Api changes

Changed Property(s)
  • ⚠️ changed property discount of type DiscountedTotalPricePortion from type CartDiscountReference to Reference
  • ⚠️ changed property exact of type SearchExactExpression from type SearchAnyValue to SearchExactValue
Required Property(s)
  • changed property images of type ProductTailoringSetExternalImagesAction to be optional
Added Property(s)
  • added property inheritedStores to type BusinessUnit
  • added property inheritedStores to type Company
  • added property inheritedStores to type Division
  • added property applicationMode to type CartDiscountValueFixed
  • added property applicationMode to type CartDiscountValueFixedDraft
  • added property custom to type CartSetCustomShippingMethodAction
  • added property custom to type StagedOrderSetCustomShippingMethodAction
  • added property custom to type StagedOrderSetShippingAddressAndCustomShippingMethodAction
  • added property businessUnits to type SearchIndexingConfiguration
Added Resource(s)
  • added resource /{projectKey}/business-units/search
  • added resource /{projectKey}/business-units/search/indexing-status
  • added resource /{projectKey}/channels/key={key}
  • added resource /{projectKey}/in-store/key={storeKey}/business-units
  • added resource /{projectKey}/in-store/key={storeKey}/business-units/key={key}
  • added resource /{projectKey}/in-store/key={storeKey}/business-units/{ID}
Added Method(s)
  • added method apiRoot.withProjectKey().businessUnits().search().post()
  • added method apiRoot.withProjectKey().businessUnits().search().head()
  • added method apiRoot.withProjectKey().businessUnits().searchIndexingStatus().get()
  • added method apiRoot.withProjectKey().channels().withKey().get()
  • added method apiRoot.withProjectKey().channels().withKey().head()
  • added method apiRoot.withProjectKey().channels().withKey().post()
  • added method apiRoot.withProjectKey().channels().withKey().delete()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().get()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().head()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().post()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withKey().get()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withKey().head()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withKey().post()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withKey().delete()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withId().get()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withId().head()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withId().post()
  • added method apiRoot.withProjectKey().inStoreKeyWithStoreKeyValue().businessUnits().withId().delete()
Added Type(s)
  • added type BusinessUnitIndexingProgress
  • added type BusinessUnitIndexingStatus
  • added type BusinessUnitPagedSearchResponse
  • added type BusinessUnitSearchIndexingStatusResponse
  • added type BusinessUnitSearchRequest
  • added type BusinessUnitSearchResult
  • added type CartDiscountPatternTarget
  • added type CountOnCustomLineItemUnits
  • added type CountOnLineItemUnits
  • added type PatternComponent
  • added type ShoppingListLineItemAddedMessage
  • added type ShoppingListLineItemRemovedMessage
  • added type ShoppingListMessage
  • added type ShoppingListLineItemAddedMessagePayload
  • added type ShoppingListLineItemRemovedMessagePayload
  • added type ShoppingListMessagePayload
  • added type BusinessUnitSearchStatus
  • added type ProjectChangeBusinessUnitSearchStatusAction
  • added type SearchExactValue
Added Enum(s)
  • added enum Canceled to type ShipmentState
  • added enum shopping-list to type MessageSubscriptionResourceTypeId

Import changes

Removed Type(s)
  • ⚠️ removed type ReferencedResourceNotFound

History changes

Added Resource(s)
  • added resource /{projectKey}/graphql
Added Method(s)
  • added method apiRoot.withProjectKeyValue().graphql().post()
Added Type(s)
  • added type GraphQLRequest
  • added type GraphQLResponse
  • added type GraphQLError
  • added type GraphQLErrorLocation
  • added type GraphQLVariablesMap
  • added type ChangeTargetPatternChangeValue
  • added type PatternComponent

Full Changelog: 12.1.0...12.2.0

12.1.0

02 Dec 14:01
ec18f8b
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #382
  • Update generated SDKs by @ct-sdks in #383

Full Changelog: 12.0.0...12.1.0

12.0.0

26 Nov 10:48
205c6f9
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #376
  • Update generated SDKs by @ct-sdks in #377
  • Update generated SDKs by @ct-sdks in #378
  • Update generated SDKs by @ct-sdks in #379
  • Update generated SDKs by @ct-sdks in #380
  • Update generated SDKs by @ct-sdks in #381
  • Version 12.0.0 preparation by @jenschude in #360

Api changes

Changed Property(s)
  • ⚠️ changed property line of type GraphQLErrorLocation from type integer to number
  • ⚠️ changed property column of type GraphQLErrorLocation from type integer to number
  • ⚠️ changed property totalPrice of type StagedOrder from type TypedMoney to CentPrecisionMoney
  • ⚠️ changed property totalPrice of type Order from type TypedMoney to CentPrecisionMoney
Added QueryParameter(s)
  • added query parameter where to method get /{projectKey}/product-selections/key={key}/products
  • added query parameter where to method get /{projectKey}/product-selections/{ID}/products

New Features

  • Improved internal logger

    • the SDKs internal HttpLogger now offers more configuration options like debug/trace logs and different LogLevels
      for specific exception types.

       services.AddSingleton<ILoggerHandlerOptions>(new LoggerHandlerOptions()
       {
           ResponseLogEvent = LogLevel.Information,
           DefaultExceptionLogEvent = LogLevel.Warning,
           ExceptionLogEvents = new Dictionary<System.Type, LogLevel>()
           {
               { typeof(NotFoundException), LogLevel.Information },
               { typeof(ConcurrentModificationException), LogLevel.Information}
           }
       });
  • ClientBuilder class

    • the ClientBuilder replaces the ClientFactory. ClientFactory calls internally invoke ClientBuilder methods
       var client = new ClientBuilder {
                       ClientName = clientName,
                       ClientConfiguration = clientConfiguration,
                       HttpClient = serviceProvider.GetService<IHttpClientFactory>().CreateClient(clientName),
                       SerializerService = serializerFactory(serviceProvider),
                       TokenProvider = tokenProviderSupplier(clientName, configuration, serviceProvider),
                       ReadResponseAsStream = options.ReadResponseAsStream,
                       CorrelationIdProvider = serviceProvider.GetService<ICorrelationIdProvider>(),
                       Middlewares = middlewares
                   }.Build();
  • NotFoundMiddleware

    • This middleware allows to return null in case a resource returns a 404 error instead of throwing an exception

       services.UseCommercetoolsApi(configuration, "Client", options: new ClientOptions() { ReadResponseAsStream = true},middlewares: new List<DelegatingMiddleware>()
       {
           new NotFoundMiddleware()
       });
  • allow adding custom middlewares to the dependency injection setup

BREAKING CHANGES

  • Updated the target framework to .NET 6.0 PR #361
  • HttpVersion is set to 2.0 in the HttpClient instead of the ApiMethod
  • Use Streams for response bodies by default PR #359 - thanks to @Henr1k80
    • The StreamCtpClient is now used by default which reduces the overall CPU & memory footprint significantly
  • Log Format has been changed PR #273
    • The log format has been changed to {HttpMethod} {Uri} {StatusCode} {Timing} {CorrelationId} {ServerTiming}. Log scopes aren't used anymore
    • by default only response information is being logged
    • raising the loglevel to debug logs request information
    • raising to loglevel trace logs request and response bodies

Full Changelog: 11.14.0...12.0.0

11.14.0

11 Nov 13:24
7e31746
Compare
Choose a tag to compare

What's Changed

Full Changelog: 11.13.0...11.14.0

11.13.0

06 Nov 15:57
f1f18cc
Compare
Choose a tag to compare

What's Changed

  • Update changelog by @ct-sdks in #364
  • Update generated SDKs by @ct-sdks in #365
  • Update generated SDKs by @ct-sdks in #366
  • Update generated SDKs by @ct-sdks in #367
  • Update generated SDKs by @ct-sdks in #368
  • Update generated SDKs by @ct-sdks in #369
  • Update generated SDKs by @ct-sdks in #370
  • Update generated SDKs by @ct-sdks in #371

Full Changelog: 11.12.0...11.13.0