23.2.0
February 2024 (version 23.2.0) aka Lunar Eclipse release
Codenamed: Lunar Eclipse
Read the Docs: Ocelot 23.2
What's new?
- Configuration: A brand new Merging files to memory feature by @ebjornset as a part of the Merging Configuration Files one.
TheAddOcelot
method merges the ocelot.*.json files into a single ocelot.json file as the primary configuration file, which is written back to disk and then added to theIConfigurationBuilder
for the well-knownIConfiguration
. You can now call anotherAddOcelot
method that adds the merged JSON directly from memory to theIConfigurationBuilder
, usingAddJsonStream
instead.
See more details in Configuration Overview of Dependency Injection. - Service Fabric: Published old undocumented "Placeholders in Service Name" feature of Service Fabric service discovery provider.
This feature by @FelixBoers is available starting from version 13.0.0. - Quality of Service: A brand new Polly v8 pipelines Extensibility feature by @RaynaldM
Focus On
Updates of the features: Configuration, Dependency Injection and QoS
- Configuration: New Merging files to memory feature by @ebjornset
- Dependency Injection: Added new overloaded AddOcelot methods by @ebjornset
- Quality of Service: Support of new Polly v8 syntax and new Extensibility feature by @RaynaldM
Ocelot extra packages
- Ocelot.Provider.Polly: Support of new Polly v8 syntax.
Polly 8.0+ versions introduced the concept of resilience pipelines.
All AddPolly extensions have been automatically migrated from v7 to v8.
Please note that older v7 extensions are marked with the[Obsolete]
attribute and renamed using theV7
suffix. And the old v7 implementation has been moved to the v7 namespace.
See more details in Polly v7 vs v8 section of Quality of Service chapter.
Stabilization aka bug fixing
- 683 by PR 1927
New rules have been added to Ocelot's configuration validation logic to find duplicate placeholders in path templates.
See more in the FileConfigurationFluentValidator class. Thanks to @AlyHKafoury! - 1518 hotfix by PR 1986
Using the defaultIServiceCollection
DI extensions to register Ocelot services resulted in theServiceCollection
provider being forced to be created by callingBuildServiceProvider()
.
This resulted in problems with dependency injection libraries, or worse, causing the Ocelot app to crash!
See more in the ServiceCollectionExtensions class. Thanks to @ArwynFr! - See all bugs of the February'24 milestone
Documentation for version 23.2
Honoring 🏅 aka Top Contributors 👏
1st 🥇 goes to Eirik Bjornset for delivering 1 feature in 19 files changed
2nd 🥈 goes to Aly Kafoury for delivering 1 feature in 9 files changed
3rd 🥉 goes to Adrien Hupond for delivering 1 feature in 6 files changed
Starring ⭐ aka Release Influencers
⭐ Adrien Hupond, @ArwynFr
⭐ Aly Kafoury, @AlyHKafoury
⭐ Eirik Bjornset, @ebjornset
⭐ Raman Maksimchuk, @raman-m
⭐ Raynald Messié, @RaynaldM
Features in Release 23.2.0
Milestone: February'24
Logbook
- 334432f by Raman Maksimchuk on Friday, March 29 at 20:18 →
Release 23.2 artifacts | +semver: minor (#2022) - 4f0e483 by Aly Kafoury on Tuesday, March 26 at 14:35 →
#683 Validate placeholder duplicates in path templates (#1927) - ded4d7e by Adrien Hupond on Thursday, March 21 at 9:54 →
#1518 Create building theIServiceCollection
(#1986) - d6eefc8 by Raynald Messié on Friday, March 15 at 13:46 →
#1875 Use Polly v8 syntax (#1914) - 84bd6e4 by Eirik Bjornset on Friday, March 15 at 9:05 →
#1216 #1955 #1956 OverloadedAddOcelot
method to support merging of configuration files to memory (#1227)