Releases: kontent-ai/delivery-sdk-net
15.0.0-rc1
New features:
- Support for the
/languagesendpoint (#256) - Better support for more
IDeliveryClients in a single project see the docs (#240, #254) - Added workflow step codenames to content items (#266)
- URL generation for the Delivery endpoint was made public in
Kentico.Kontent.Urlspackage
Fixed bugs:
- Issue in GetOriginatingAssembly function inside HttpRequestHeadersExtensions (#264)
- Error deserializing rich text content when using distributed caching (#265)
Other changes:
- SDK tracking header moved to
HttpClient.DefaultRequestHeaders(#248) - Bumped versions of
Microsoft.Extensions.*dependencies to 3.1.2
Breaking changes:
- When an item, type, or taxonomy is not found we do not throw an exception anymore, instead,
IApiResponsehas propertiesIsSuccessandErrorthat contain information about what went wrong. (#255, #251) - Implicit operator removed from class
DeliveryItemResponse- this syntax sugar can't be used anymore, please use the.Itemproperty of theDeliveryItemResponse - removed
Blocksproperty fromIRichTextContent- use theIEnumerableaspect ofIRichTextContentitself (in other words, just remove.Blocksfrom your code) - Project ID is no longer part of *EndpointUrl properties - this is an internal change that should have no impact on code used by customers (#246)
- The package
Kentico.Kontent.ImageTransformationwas renamed toKentico.Kontent.Urls- there shouldn't be any breaking changes within the package
14.2.1
14.2.0
https://www.nuget.org/packages/Kentico.Kontent.Delivery/14.2.0
New features:
- #252 - Added support for the cache expiration type
14.1.0
https://www.nuget.org/packages/Kentico.Kontent.Delivery/14.1.0
New features:
- added support for Collections - #244
14.0.1
https://www.nuget.org/packages/Kentico.Kontent.Delivery/14.0.1
- Contains a minor fix related to Single File Deployment on .NET 5 (
Assembly.Locationcan be null)
14.0.0
New features
- Support for distributed caching via the
IDistributedCacheinterface - #196- there is a new implementation of
IDeliveryCacheManagercalledDistributedCacheManagerwhich implements theIDistributedCacheinterface using BSON serialization - it's possible to register the cache using
Kentico.Kontent.Delivery.Caching.Extensions.ServiceCollectionExtensions.AddDeliveryClientCache()by changingDeliveryCacheOptions.CacheTypefromMemorytoDistributed. by default, it registers theMemoryDistributedCache. if you want to use a different implementation (e.g. redis, you need to register its instance before callingAddDeliveryClientCache() - Documentation
- there is a new implementation of
IContentLinkUrlResolveris nowasync(as well as several other interfaces - see the breaking changes below) - #213DebuggerDisplayattributes for models - #211- Enabled low level access to the
ApiResponse- #217 - Faking responses made simpler by only returning interfaces - #216 & #61
- Added support for new types of filters #229 #232
Bugfixes
- Automatic formatting of the image transformation API - #224
- Memory leak when registering named clients - #223
- Hashcode of a cached type is now part of the cache key - #236
Breaking changes & upgrade advice
- all models have their interfaces extracted to
Kentico.Kontent.Delivery.Abstractionsand the SDK returns only the respective interfaces- for
Assetwe haveIAsset, forContentTypethere is anIContentType, etc.
- for
DeliveryCacheManagerwas renamed toMemoryCacheManagerIPropertyValueConverter.GetPropertyValuewas madeasyncand strongly-typed. Instead ofJToken, you receiveContentElementValue<T>withName,Codename,Type, andValueproperties whereValueis of typeTandTis the type of your property (DateTime,string,int,Asset....).- methods in
IContentLinkUrlResolver,IModelProvider,IInlineContentItemsProcessorare nowasync. their input parameters remain the same but their return type changed toTask<T>instead of the originalTand they all haveAsyncsuffix - some models are now more specific (contain e.g.
Guidinstead ofstringwhere it was appropriate) - applyGuid.Parse()orGuid.ToString()to keep your code compatible or adoptGuids in your code as well - places which returned
ContentElementnow returnIContentElement. plus, based on the type of the element, they can return a type castable toIMultipleChoiceElementorITaxonomyElementto allow strongly typed access to members specific to these types - the
IDeliveryClientnow contains onlyasyncmethods that operate upon strongly-typed models. all JSON-based methods were removed. if someone wishes to access the raw JSON, allDelivery*Responseobjects contain an object calledApiResponseof theIApiResponsetype. this property contains low-level data likestring Content,string RequestUrl, orstring ContinuationToken.- some overloads were preserved as extension methods but are not required when implementing the
IDeliveryClientinterface
- some overloads were preserved as extension methods but are not required when implementing the
IInlineImage's properties were renamed fromAltTextandSrctoDescriptionandUrlrespectively- All code from the
Kentico.Kontent.Delivery.ImageTransformationnamespace was extracted to a separate NuGet packageKentico.Kontent.ImageTransformation - removed the -
AddDeliveryClient(this IServiceCollection services, string name, Func<IDeliveryClientBuilder, IDeliveryClient> buildDeliveryClient)extension method - please use any other overload (they should provide enough flexibility for all scenarios) - AngleSharp reference was upgraded to the latest stable version - 0.14.0. If you explicitly reference an older version in your projects, please follow the migration guide and upgrade to 0.14.0 too.
Model generator
Use model generator v6.0.0
NuGets
https://www.nuget.org/packages/Kentico.Kontent.Delivery/14.0.0
https://www.nuget.org/packages/Kentico.Kontent.Delivery.Rx/14.0.0
https://www.nuget.org/packages/Kentico.Kontent.Delivery.Caching/14.0.0
https://www.nuget.org/packages/Kentico.Kontent.Delivery.Abstractions/14.0.0
https://www.nuget.org/packages/Kentico.Kontent.ImageTransformation/14.0.0
13.0.2
Fixes:
- #223 - predictable memory usage (related to
IOptionsMonitor)
https://www.nuget.org/packages/Kentico.Kontent.Delivery/13.0.2
13.0.1
https://www.nuget.org/packages/Kentico.Kontent.Delivery/13.0.1
New features:
- support for
HttpClientFactory - support for memory caching
- support for registering multiple clients
- support for hot-reloading of configuration via
IOptionsSnapshotandIOptionsMonitor - new best practices for working with the SDK
- better support for structured rich-text rendering of assets
Breaking changes:
WithHttpClient(new HttpClient())becameWithDeliveryHttpClient(new DeliveryHttpClient(new HttpClient()))(see the docs)- interfaces and models have been moved to the abstraction library
Kentico.Kontent.Delivery.Abstractions-> add this namespace to your codefiles (or use the Code Generator v5, link below)
Related releases:
12.3.0
https://www.nuget.org/packages/Kentico.Kontent.Delivery/12.3.0
GetItemsAsyncresponse can include the total item count matching the search criteria. UseIncludeTotalCountParameterto use this feature. This can be used to build paging navigation.
12.2.0
https://www.nuget.org/packages/Kentico.Kontent.Delivery/12.2.0
- Fixed some issue when used from Client-side Blazor
- Added Width and Height properties to Asset model