Download Latest Version 24.0.1 source code.tar.gz (861.4 kB)
Email in envelope

Get an email when there's a new version of Ocelot

Home / 24.0.0
Name Modified Size InfoDownloads / Week
Parent folder
Ocelot.Provider.Eureka.24.0.0.nupkg 2025-04-20 25.5 kB
Ocelot.Provider.Kubernetes.24.0.0.nupkg 2025-04-20 45.6 kB
Ocelot.Provider.Polly.24.0.0.nupkg 2025-04-20 36.4 kB
Ocelot.Cache.CacheManager.24.0.0.nupkg 2025-04-20 24.0 kB
Ocelot.Provider.Consul.24.0.0.nupkg 2025-04-20 43.0 kB
Ocelot.Tracing.OpenTracing.24.0.0.nupkg 2025-04-20 27.3 kB
Ocelot.24.0.0.nupkg 2025-04-20 330.1 kB
Ocelot.Tracing.Butterfly.24.0.0.nupkg 2025-04-20 28.5 kB
24.0.0 source code.tar.gz 2025-04-20 865.5 kB
24.0.0 source code.zip 2025-04-20 1.3 MB
README.md 2025-04-20 20.0 kB
Totals: 11 Items   2.8 MB 2

Upgrade to .NET 9 (TFM net9.0, version 24.0) aka .NET 9 release

Milestone: .NET 9 Codenamed: .NET 9 Read the Docs: Ocelot 24.0 with PDF Target Framework Monikers: net8.0, net9.0

:information_source: About

On November 12th, 2024, the .NET team announced the release of the .NET 9 framework:

This major release upgrades Ocelot package TFMs to net9.0 in addition to the current net8.0. Thus, the current Ocelot supported frameworks are .NET 8 LTS and .NET 9 STS. According to the .NET Support Policy, the Ocelot team has discontinued support of .NET 6 and .NET 7 by providing the version 23.4.3 which targets those .NET versions.

:bookmark: Official Notice to the Community Regarding CircleCI

Ocelot's previous CI/CD provider, CircleCI, facilitated professional and seamless development, build processes, and delivery of Ocelot versions for seven years, starting in March 2018. But last year, in January 2025, after patching Ocelot with version 23.4.3, our team encountered legal issues related to CircleCI Co's policies, leading to this CI/CD provider stopping the build process for the Ocelot project. This legal issue and technical incident were unforeseen on our part because Ocelot is open-source software (OSS), and forcibly stopping the project's build process and blocking accounts appears to be an unfortunate breach of OSS principles. We strongly believe that any developer or user, from any country, should be able to use software providers that support the OSS movement by offering free or other cost-free plans and serving the accounts of these users, OSS teams, and OSS projects 24/7, 365 days a year. We consider this legal issue and the resulting technical incidents involving CircleCI to be a serious breach of OSS principles and an act of discrimination against Ocelot users, developers, and customers who rely on Ocelot OSS, ultimately causing delays to the current release. As a team, we do not recommend using CircleCI for OSS projects, as there is no guarantee that these projects will not face discrimination from this U.S. company.

For all developers, team leads, architects, and managers of any OSS projects—at least on GitHub—we recommend utilizing the built-in GitHub Actions CI/CD infrastructure. Since its founding, GitHub has supported OSS projects. Today, GitHub provides 2,000 minutes of free CI/CD build time per month for OSS repositories (public repos). Also, we strongly believe that GitHub will never violate its OSS policies without a notice period, nor fail to inform owners and maintainers that certain policies must be met by Ocelot's owners. In addition, we want to acknowledge that we are monitoring U.S. government regulations. Unfortunately, we must state that some GitHub products are unavailable in certain countries, even if the project is OSS and GitHub claims these products are free for OSS. Since the Ocelot team does not utilize these non-critical products (we prefer to energize our brains rather than rely on AI-driven products), and since the Ocelot project is currently well-served by GitHub Co, the Ocelot team affirms that Ocelot will remain on GitHub as long as its OSS-friendly policies continue. As a team, we hope that GitHub will never enforce extra rules on our project or other OSS projects. Regardless, we remain on GitHub! octocat

:new: What's New?

  • DevOps: The CI/CD infrastructure was migrated from CircleCI to GitHub Actions by @raman-m.

Starting from version 24.0, all pull requests, development commits, and releases will be built using GitHub Actions workflows (documentation). We currently have three workflows: one for pull requests (PR), one for the develop branch (Develop), and one for the main branch (Release). All workflow runs are available on the Actions dashboard.

The PR workflow will track code coverage using Coveralls. After opening a pull request or submitting a new commit to a pull request, Coveralls will publish a short message with the current code coverage once the top commit is built. Considering that Coveralls retains the entire history but does not fail the build if coverage falls below the threshold, all workflows have a built-in 80% threshold, applied internally within the build-cake job, particularly during the "Cake Build" step-action. If the code coverage of a newly opened pull request drops below the 80% threshold, the build-cake job will fail, logging an appropriate message in the "Cake Build" step. For your information, the current code coverage of the Ocelot project is around 85-86%. The coverage threshold is subject to change in upcoming releases. All Coveralls builds can be viewed by navigating to the ThreeMammals/Ocelot project on Coveralls.io.

:up: What's Updated?

:notebook: Documentation Summary

Due to the major version increase to v24, all documentation chapters were reviewed to improve readability, eliminate ambiguity, provide more useful tables and data schemas, update code snippets with the syntax of Top-level statements, and add handy samples, among other enhancements. The entire documentation is designed to be truly professional for senior developers while remaining easy to read for junior developers and newcomers who are starting to use the Ocelot gateway.

We believe that Ocelot students will ask fewer questions in 2025 :wink: For students, we always recommend finding answers in Q&A category first. Honestly, it is advised to read existing discussions before opening a new question in repo discussions. For true Ocelot patriots, we have added a README link to the smart Ocelot AI Guru assistant, which is always ready to answer any of your questions. Feel free to explore and interact with it! :blush:

Honoring :medal_sports: aka Top Contributors :clap:

1st :1st_place_medal: goes to Adam Friedman for delivering 1 feature in 10 files changed 2nd :2nd_place_medal: goes to Finn for delivering 1 feature in 3 files changed 3rd :3rd_place_medal: goes to jvanderlei for delivering 1 feature in 1 file changed with 49 insertions

Starring :star: aka Release Influencers :bowtie:

:star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star::star: Raman Maksimchuk :star: Adam Friedman :star: Finn :star: jvanderlei :star: Kursat Aktas

Features in Release 24.0.0

Logbook - abe7ab67 by **Raman Maksimchuk** on Sunday, April 20 at 16:13 → Release v24.0 | Upgrade to `net9.0` TFM | .NET 9 release | +semver: major - 34b55b5d by **Raman Maksimchuk** on Sunday, April 20 at 14:22 → Follow up [#2286] Release v24.0 | Artifacts and NuGet package icon - 0678e7a1 by **Raman Maksimchuk** on Friday, April 18 at 18:04 → Follow up [#2286] Release v24.0 | Artifacts and bug fixing - 56ae08e5 by **Raman Maksimchuk** on Friday, April 18 at 13:30 → Release v24.0 | Upgrade to `net9.0` TFM | .NET 9 release | +semver: breaking (#2286) - d262921a by **Raman Maksimchuk** on Thursday, April 10 at 18:38 → [#2254] Final version of the Release workflow - 11a87392 by **Raman Maksimchuk** on Thursday, April 10 at 17:04 → Update README status badges - b862d78f by **Raman Maksimchuk** on Thursday, April 10 at 15:47 → [#2254] Develop workflow: Coveralls step - b6e5ade4 by **Raman Maksimchuk** on Thursday, April 10 at 15:27 → [#2254] PR workflow: Coveralls step (#2283) - dec26f1c by **Raman Maksimchuk** on Wednesday, April 09 at 15:38 → [#2254] New COVERALLS_REPO_TOKEN env var - 6a4a386c by **Raman Maksimchuk** on Wednesday, April 09 at 15:12 → [#2254] PR workflow check & Update NuGet packaging properties (#2281) - b458f0fd by **Raman Maksimchuk** on Monday, April 07 at 17:06 → [#2254] CoverAlls step workaround - 042a31fc by **Raman Maksimchuk** on Friday, April 04 at 14:24 → [#2254] GitHub Actions: Cake release job - 5543f2e4 by **Raman Maksimchuk** on Thursday, April 03 at 20:46 → [#2254] PullRequest target in Cake script for PR workflow (#2275) - 479665ad by **Raman Maksimchuk** on Wednesday, April 02 at 16:17 → [#2254] GitHub Actions: Cake build job - 09de4ceb by **Raman Maksimchuk** on Wednesday, April 02 at 10:41 → [#2218] Uninstall the IdentityServer4 packages and deactivate their functionality | IdentityServer Open Redirect vulnerability (#2274) - 355cc33f by **Raman Maksimchuk** on Thursday, March 27 at 18:16 → [#2219] Documentation supporting .NET 8-9 (#2258) - a8ba9848 by **Adam Friedman** on Wednesday, March 19 at 05:47 → Upgrade to KubeClient v3 and log failed Kubernetes API requests (#2266) - 221a22f9 by **Raman Maksimchuk** on Thursday, January 30 at 21:52 → Update README.md: develop workflow badge - 4b6b96af by **Raman Maksimchuk** on Thursday, January 30 at 21:40 → [#2255] [#2256] Overload `AddKubernetes` method with `KubeClientOptions` param for the discovery provider (#2257) - ab119f82 by **Raman Maksimchuk** on Thursday, January 23 at 12:38 → Test new CI environment - c0afa425 by **Raman Maksimchuk** on Wednesday, January 22 at 16:31 → Setting up CI/CD with GitHub Actions using a standard .NET workflow (#2254) - 68090bc4 by **Raman Maksimchuk** on Wednesday, January 22 at 11:49 → Goodbye, CircleCI... Write more funny policies! - 1b34be9b by **Raman Maksimchuk** on Tuesday, January 21 at 13:32 → Test stupid CircleCI policy - d1ecfafd by **Raman Maksimchuk** on Thursday, December 26 at 13:23 → [#1912] Use top-level statements for Program in samples and update Getting Started docs (#2244) - 9304dd23 by **jvanderlei** on Thursday, December 19 at 07:13 → [#1876] Replace `JwtSecurityTokenHandler` with `JsonWebTokenHandler` in the Authentication docs according to breaking changes in .NET 8 Auth (#2238) - 47d279dc by **Raman Maksimchuk** on Friday, December 13 at 18:53 → [#2219] Remove preprocessor directives targeted at old .NET 6 and 7 (#2239) - 5c8938f6 by **Raman Maksimchuk** on Thursday, December 12 at 15:52 → [#2219] Remove the BDDfy framework from the unit testing project (#2235) - 29c72f8f by **Kursat Aktas** on Tuesday, December 10 at 14:56 → Introducing Ocelot Guru on Gurubase.io (#2202) - 995b103b by **Finn** on Tuesday, December 10 at 12:33 → [#2064] 2065 [#2132] [#2169] Ampersand vs Slash workaround in `UpstreamTemplatePatternCreator` (#2225) - c2aa2879 by **Raman Maksimchuk** on Friday, December 06 at 14:34 → [#2219] Upgrade Docker, CircleCI and update to `net8.0`, `net9.0` target frameworks (#2230) - 2e352bc0 by **Raman Maksimchuk** on Thursday, November 28 at 10:41 → [#2145] Refactor Infrastructure `StringExtensions` (#2222)
Source: README.md, updated 2025-04-20