-
Notifications
You must be signed in to change notification settings - Fork 112
docs: add mid-2026 update blog post #1444
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
8495be5
809f60b
ae45587
e56b9ac
19f1686
6d77d2f
0f80dc5
c5dcef9
4f2d309
1fbde3b
bb8167c
4426fe0
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,149 @@ | ||||||
| --- | ||||||
| title: 'OpenFeature Mid-2026 Update: Platform-Native Feature Flags, a New TC Member, and Spec v0.9.0' | ||||||
| description: 'Six large platforms shipped feature flag services supporting OpenFeature, new vendors joined the ecosystem, Nicklas Lundin joined the Technical Committee, and specification v0.9.0 shipped.' | ||||||
| date: 2026-08-12 | ||||||
| categories: ['OpenFeature', 'Feature Flags', 'CloudNative', 'Specification'] | ||||||
| tags: [update, ecosystem, governance, spec] | ||||||
| slug: 'openfeature-mid-2026-update' | ||||||
| authors: ['jonathannorris'] | ||||||
| # image: /img/blog/2026-08-12-mid-2026-update/<add-hero-image>.png | ||||||
| --- | ||||||
|
|
||||||
| It has been a busy few months since the [KubeCon EU 2026 recap](/blog/kubecon-eu-2026-recap). | ||||||
| Six large platforms shipped feature flag services supporting OpenFeature, more vendors joined the ecosystem, the Technical Committee grew, and we shipped the largest specification release in over two years. | ||||||
|
|
||||||
| <!--truncate--> | ||||||
|
|
||||||
| ## Platform-Native Feature Flags | ||||||
|
|
||||||
| The biggest news of the last year is not something we built. | ||||||
| Six well-known platforms launched feature flag services of their own, and each chose OpenFeature as a critical part of its product offering. | ||||||
|
|
||||||
| - **[Datadog](https://docs.datadoghq.com/feature_flags/)** launched in late 2025 and describes its product as "built on the OpenFeature standard," now supporting OpenFeature providers across eight languages. | ||||||
| Coverage spans server-side [Java](https://docs.datadoghq.com/feature_flags/server/java), [Node.js](https://docs.datadoghq.com/feature_flags/server/nodejs), [Python](https://docs.datadoghq.com/feature_flags/server/python), and [Ruby](https://docs.datadoghq.com/feature_flags/server/ruby), plus client-side [JavaScript](https://docs.datadoghq.com/feature_flags/client/javascript), [React](https://docs.datadoghq.com/feature_flags/client/react), [iOS](https://docs.datadoghq.com/feature_flags/client/ios), and [Android](https://docs.datadoghq.com/feature_flags/client/android/). | ||||||
| - **[Vercel Flags](https://vercel.com/blog/vercel-flags-platform-native-feature-flags)** became generally available in April, with an OpenFeature provider. | ||||||
| Their [docs](https://vercel.com/docs/flags/vercel-flags/sdks/openfeature) scope it to server-side use, with their own Flags SDK covering client-side and framework-native cases. | ||||||
| - **[Cloudflare Flagship](https://blog.cloudflare.com/flagship/)** was announced in April and reached public beta in May, with providers for both the Workers runtime and the browser. | ||||||
| Evaluation happens inside the Workers runtime rather than over the network, and the provider also runs on Node.js, Bun, and Deno. | ||||||
| - **[Google Cloud App Lifecycle Manager](https://cloud.google.com/blog/products/application-development/new-feature-flags-in-applifecycle-manager)** added feature flags in May, now in public preview. | ||||||
| Google describes it as "built on the OpenFeature standard, utilizing industry-standard SDKs and the flagd evaluation engine," making it an adopter of the OpenFeature [flagd](https://flagd.dev/) evaluation engine alongside the API. | ||||||
| Notably, there is no Google-specific provider: their [quickstart](https://docs.cloud.google.com/saas-runtime/docs/flags/flags-quickstart) uses the community flagd provider as-is, with guides for Python, Java, and Go. | ||||||
| - **[Mixpanel](https://mixpanel.com/blog/mixpanel-experimentation-feature-flags/)** launched feature flags alongside its experimentation suite in June. | ||||||
| Its eight OpenFeature providers cover server-side [Go](https://github.com/mixpanel/mixpanel-go/tree/main/openfeature), [Java](https://github.com/mixpanel/mixpanel-java/tree/master/openfeature-provider), [JavaScript](https://github.com/mixpanel/mixpanel-node/tree/master/packages/openfeature-server-provider), [Python](https://github.com/mixpanel/mixpanel-python/tree/master/openfeature-provider), and [Ruby](https://github.com/mixpanel/mixpanel-ruby/tree/master/openfeature-provider), plus client-side [JavaScript](https://github.com/mixpanel/mixpanel-js/tree/master/packages/openfeature-web-provider), [Swift](https://github.com/mixpanel/mixpanel-swift-openfeature), and [Kotlin](https://github.com/mixpanel/mixpanel-android/tree/master/openfeature-provider). | ||||||
| - **[Octopus Deploy](https://octopus.com/blog/feature-flags-public-preview)** added feature flags in July, in public preview for Octopus Cloud customers. | ||||||
| Its documentation states that "Octopus Feature Flags rely on OpenFeature as the client SDK," with [providers](https://octopus.com/docs/feature-flags/providers) for server-side [.NET](https://github.com/OctopusDeploy/openfeature-provider-dotnet) and [Java](https://github.com/OctopusDeploy/openfeature-provider-java), plus [TypeScript](https://github.com/OctopusDeploy/openfeature-provider-ts-web) in the browser. | ||||||
|
|
||||||
| This is what a standard is for. | ||||||
| Each of these teams shipped a product without inventing new APIs and SDKs, so application code stays portable and teams remain free to move between them. | ||||||
| We expect this trend to continue and welcome more vendors building on OpenFeature. | ||||||
|
|
||||||
| ## New Vendors in the Ecosystem | ||||||
|
|
||||||
| Alongside the platforms above, eight more projects shipped their first OpenFeature providers: | ||||||
|
|
||||||
| - **[ConfigDirector](https://configdirector.com/)** added JavaScript for both | ||||||
| [browser](https://docs.configdirector.com/sdks/browser/openfeature-web) and [server](https://docs.configdirector.com/sdks/server/openfeature-node). | ||||||
| - **[Feat](https://feat.so)** added JavaScript for both | ||||||
| [client](https://github.com/feathq/openfeature-web) and [server](https://github.com/feathq/js-sdk), | ||||||
| plus [Dart](https://github.com/feathq/openfeature-dart). | ||||||
| - **[Featureflip](https://featureflip.io/)** added [JavaScript and .NET](https://featureflip.io/docs/integrations/openfeature/). | ||||||
| - **[Featurevisor](https://featurevisor.com/)** [added providers](https://featurevisor.com/blog/openfeature-providers/) across seven languages: | ||||||
| JavaScript for [Node.js](https://github.com/featurevisor/featurevisor/tree/main/packages/openfeature-provider-node) | ||||||
| and the [browser](https://github.com/featurevisor/featurevisor/tree/main/packages/openfeature-provider-web), | ||||||
| plus [Go](https://github.com/featurevisor/featurevisor-go/tree/main/openfeature), | ||||||
| [Java](https://github.com/featurevisor/featurevisor-java/tree/main/featurevisor-openfeature), | ||||||
| [PHP](https://github.com/featurevisor/featurevisor-php/blob/main/src/OpenFeatureProvider.php), | ||||||
| [Python](https://github.com/featurevisor/featurevisor-python/blob/main/src/featurevisor/openfeature.py), | ||||||
| [Ruby](https://github.com/featurevisor/featurevisor-ruby/blob/main/lib/featurevisor-openfeature.rb), | ||||||
| and [Swift](https://github.com/featurevisor/featurevisor-swift2/tree/main/Sources/FeaturevisorOpenFeature). | ||||||
| - **[Pendo](https://www.pendo.io/)** added JavaScript providers for | ||||||
| [server](https://www.npmjs.com/package/@pendo/openfeature-server-provider) and [web](https://www.npmjs.com/package/@pendo/openfeature-web-provider). | ||||||
| - **[Rollgate](https://rollgate.io/)** added a | ||||||
| [JavaScript server provider](https://github.com/rollgate/sdks/tree/main/packages/openfeature-server-provider). | ||||||
| - **[Superposition](https://juspay.io/open-source/superposition)** added server-side | ||||||
| [Java](https://github.com/juspay/superposition/tree/main/clients/java/openfeature-provider), | ||||||
| [JavaScript](https://github.com/juspay/superposition/tree/main/clients/javascript/open-feature-provider), | ||||||
| [Python](https://github.com/juspay/superposition/tree/main/clients/python/provider), | ||||||
| and [Rust](https://github.com/juspay/superposition/tree/main/crates/superposition_provider), | ||||||
| plus client-side [Kotlin](https://juspay.io/open-source/superposition/docs/providers/openfeature/java/). | ||||||
| - **[Switchbox](https://switchbox.dev/)** added | ||||||
| [JavaScript](https://github.com/ignat14/switchbox-sdk-js/tree/main/packages/openfeature), | ||||||
| [React](https://switchbox.dev/docs/sdk/openfeature), | ||||||
| and [Python](https://github.com/ignat14/switchbox-sdk-python/tree/main/providers/openfeature) providers. | ||||||
|
|
||||||
| Existing vendors expanded their language coverage: | ||||||
|
|
||||||
| - **[Flagsmith](https://www.flagsmith.com/)** added [Kotlin](https://github.com/Flagsmith/flagsmith-openfeature-provider-kotlin) and [PHP](https://github.com/open-feature/php-sdk-contrib/tree/main/providers/Flagsmith). | ||||||
| - **[GO Feature Flag](https://gofeatureflag.org/)** added [Rust](https://gofeatureflag.org/docs/sdk/server_providers/openfeature_rust). | ||||||
| - **[PostHog](https://posthog.com/)** added official | ||||||
| [Node.js](https://github.com/PostHog/posthog-js/tree/main/packages/openfeature-node-provider), | ||||||
| [web](https://github.com/PostHog/posthog-js/tree/main/packages/openfeature-web-provider), | ||||||
| and [Python](https://github.com/PostHog/posthog-python/tree/main/openfeature-provider) providers, | ||||||
| where its JavaScript coverage had previously been community maintained. | ||||||
| - **[Unleash](https://www.getunleash.io/)** now maintains | ||||||
| [seven official providers in beta](https://docs.getunleash.io/release-notes/2026/8/5#openfeature-providers-in-beta) | ||||||
| under its own organization, covering Node.js, PHP, Python, Ruby, Rust, Swift, and Android. | ||||||
|
Comment on lines
+83
to
+85
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win Correct the Unleash provider count and list. As of August 7, 2026, Unleash lists six maintained OpenFeature providers: Node.js, PHP, Python, Ruby, Rust, and Swift. The article says seven and lists Android instead of Swift. Update the count and list, or add an authoritative source for a seventh provider. (docs.getunleash.io) 🤖 Prompt for AI Agents |
||||||
| On the community side, a new | ||||||
| [.NET provider](https://github.com/open-feature/dotnet-sdk-contrib/tree/main/src/OpenFeature.Providers.Unleash) | ||||||
| landed in the OpenFeature organization, and the web provider gained [Angular](https://github.com/open-feature/js-sdk-contrib/blob/main/libs/providers/unleash-web/README.md#angular-framework) | ||||||
| and [React](https://github.com/open-feature/js-sdk-contrib/blob/main/libs/providers/unleash-web/README.md#react-framework) support. | ||||||
|
|
||||||
| If your company has a provider that is not listed, [let us know](https://github.com/open-feature/openfeature.dev/issues/new?assignees=&labels=provider&projects=&template=document-provider.yaml&title=%5BProvider%5D%3A+) and we will add it to the [ecosystem directory](/ecosystem). | ||||||
|
|
||||||
| ## Welcoming Nicklas Lundin to the Technical Committee | ||||||
|
|
||||||
| [Nicklas Lundin](https://github.com/nicklasl) has joined the OpenFeature [Technical Committee](/community/tech-committee-charter/). | ||||||
| Nicklas is based in Stockholm and works at Spotify on [Confidence](https://confidence.spotify.com/), an experimentation and feature flagging platform supporting OpenFeature. | ||||||
| He has been a dedicated contributor for several years and has driven much of the development and refinement of our mobile SDKs. | ||||||
|
|
||||||
| ## Specification v0.9.0 | ||||||
|
|
||||||
| [Specification v0.9.0](https://github.com/open-feature/spec/releases/tag/v0.9.0) is our first spec release since v0.8.0 in March 2024. | ||||||
|
|
||||||
| The most consequential change ([spec#314](https://github.com/open-feature/spec/pull/314)) stabilizes the evaluation and provider sections and hardens hooks, events, and evaluation context. | ||||||
| If you build providers or SDKs, the surfaces you depend on most are now considerably more settled. | ||||||
|
|
||||||
| The release also gathers up work that had been accumulating: | ||||||
| [tracking](https://github.com/open-feature/spec/pull/268), | ||||||
| a [logging hook](https://github.com/open-feature/spec/pull/269), | ||||||
| [hook data](https://github.com/open-feature/spec/pull/273), | ||||||
| a [multi-provider appendix](https://github.com/open-feature/spec/pull/264), | ||||||
| and an [observability appendix](https://github.com/open-feature/spec/pull/287) with refreshed OpenTelemetry semantic conventions. | ||||||
| Two changes are worth calling out for implementers. | ||||||
| [Isolated API instances](https://github.com/open-feature/spec/pull/368) mean the global singleton is no longer mandatory, which unblocks micro-frontends, dependency injection, and test isolation. | ||||||
| [Provider lifecycle](https://github.com/open-feature/spec/pull/385) is now event-driven, so providers own their own status rather than having the SDK infer it, closing a class of initialization races. | ||||||
|
|
||||||
| Three changes are breaking ([spec#280](https://github.com/open-feature/spec/pull/280), [spec#306](https://github.com/open-feature/spec/pull/306), and [spec#360](https://github.com/open-feature/spec/pull/360)), so please read the release notes before upgrading a provider or SDK implementation. | ||||||
|
|
||||||
| Fourteen people made their first contribution to the specification in this release. | ||||||
|
|
||||||
| ## Also Shipped | ||||||
|
|
||||||
| - **OFREP gained push updates.** Version 0.3.0 ([protocol#67](https://github.com/open-feature/protocol/pull/67)) added SSE event streams, and [protocol#77](https://github.com/open-feature/protocol/pull/77) accepted three ADRs covering push notifications, [cache-first local persistence](https://github.com/open-feature/protocol/pull/75), and [turning off default timer polling](https://github.com/open-feature/protocol/pull/69). | ||||||
| - **A new C++ SDK.** The [C++ SDK](/docs/reference/sdks/server/cpp) cut its [first release](https://github.com/open-feature/cpp-sdk/releases) in June and is already at v0.1.3, with hooks, evaluation options, and the global API. | ||||||
| - **flagd shipped [0.16.0](https://github.com/open-feature/flagd/releases/tag/flagd%2Fv0.16.0) and [0.16.1](https://github.com/open-feature/flagd/releases/tag/flagd%2Fv0.16.1)**, adding custom sync headers ([flagd#1960](https://github.com/open-feature/flagd/pull/1960), [flagd#1969](https://github.com/open-feature/flagd/pull/1969)), incremental gRPC updates ([flagd#1922](https://github.com/open-feature/flagd/pull/1922)), and content-hash deduplication ([flagd#1991](https://github.com/open-feature/flagd/pull/1991)), alongside a sustained run of reliability fixes. | ||||||
| - **The OpenFeature Operator reached [v0.9.2](https://github.com/open-feature/open-feature-operator/releases/tag/v0.9.2).** Note that v0.9.0 moved to [native sidecar containers](https://github.com/open-feature/open-feature-operator/pull/807) and now requires Kubernetes 1.29 or later. | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win Correct the operator release attribution. Operator v0.9.0 was released on April 17, 2026. PR Proposed wording- Note that v0.9.0 moved to [native sidecar containers](https://github.com/open-feature/open-feature-operator/pull/807) and now requires Kubernetes 1.29 or later.
+ Note that the operator later moved to [native sidecar containers](https://github.com/open-feature/open-feature-operator/pull/807) and now requires Kubernetes 1.29 or later.📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
| - **Isolated API instances landed across five SDKs.** [.NET](https://github.com/open-feature/dotnet-sdk/pull/740), [PHP](https://github.com/open-feature/php-sdk/pull/171), and [Java](https://github.com/open-feature/java-sdk/pull/1928) have shipped them in releases, with [Go](https://github.com/open-feature/go-sdk/pull/492) and [Kotlin](https://github.com/open-feature/kotlin-sdk/pull/243) merged and awaiting a release. | ||||||
| Library authors, micro-frontends, and parallel test suites no longer have to share one process-global singleton. | ||||||
| - **"DISABLED is a successful evaluation" rolled out to five flagd cores.** [JavaScript](https://github.com/open-feature/js-sdk-contrib/pull/1558), [Java](https://github.com/open-feature/java-sdk-contrib/pull/1800), [Go](https://github.com/open-feature/go-sdk-contrib/pull/896), [Python](https://github.com/open-feature/python-sdk-contrib/pull/395), and [.NET](https://github.com/open-feature/dotnet-sdk-contrib/pull/671) all shipped the change, each with a major version bump on the core library. | ||||||
| A disabled flag now resolves successfully and returns your default rather than surfacing an error. | ||||||
|
coderabbitai[bot] marked this conversation as resolved.
|
||||||
| - **Long support arrived in the JVM SDKs.** [Java](https://github.com/open-feature/java-sdk/pull/1985) and [Kotlin](https://github.com/open-feature/kotlin-sdk/pull/225) both added a 64-bit integer type, closing a gap where large flag values overflowed. | ||||||
| - **New providers.** Azure App Configuration ([JavaScript](https://github.com/open-feature/js-sdk-contrib/pull/1575)), localStorage ([JavaScript](https://github.com/open-feature/js-sdk-contrib/pull/1518)), Optimizely ([Go](https://github.com/open-feature/go-sdk-contrib/pull/802), with Java reaching 1.0.0), and GCP Secret Manager and Parameter Manager ([Java](https://github.com/open-feature/java-sdk-contrib/pull/1772)). | ||||||
| - **Three breaking changes worth checking before you upgrade.** Python's `set_provider()` is now non-blocking with a new `set_provider_and_wait()` ([python-sdk#595](https://github.com/open-feature/python-sdk/pull/595)), fractional bucketing was overhauled ([js-sdk-contrib#1501](https://github.com/open-feature/js-sdk-contrib/pull/1501)) in a way that changes which users land in which variant, and the OFREP web provider [turned default polling off](https://github.com/open-feature/js-sdk-contrib/pull/1510). | ||||||
|
|
||||||
| ## Where We Could Use Help | ||||||
|
|
||||||
| The work that moves the ecosystem furthest is rarely a single fix in a single SDK. | ||||||
| These are the larger efforts where an extra pair of hands changes the outcome, and each one has a per-language issue you can pick up. | ||||||
|
|
||||||
| - **[Specification v0.9.0 compliance](https://github.com/open-feature/spec/releases/tag/v0.9.0) is open in all ten SDKs.** Until each one works through its checklist, the same OpenFeature version behaves differently depending on which language your service is written in. | ||||||
| There is a tracking issue per SDK: [JavaScript](https://github.com/open-feature/js-sdk/issues/1441), [Java](https://github.com/open-feature/java-sdk/issues/1999), [.NET](https://github.com/open-feature/dotnet-sdk/issues/792), [Go](https://github.com/open-feature/go-sdk/issues/526), [Python](https://github.com/open-feature/python-sdk/issues/618), [Ruby](https://github.com/open-feature/ruby-sdk/issues/300), [Kotlin](https://github.com/open-feature/kotlin-sdk/issues/250), [Swift](https://github.com/open-feature/swift-sdk/issues/122), [Rust](https://github.com/open-feature/rust-sdk/issues/137), and [PHP](https://github.com/open-feature/php-sdk/issues/182). | ||||||
| - **[A cross-language conformance suite for providers](https://github.com/open-feature/spec/issues/417).** Every provider is verified differently today, or not at all, which is the root cause of most of the parity gaps below. | ||||||
| This is the highest-leverage project on the list. | ||||||
| - **[Hashing consistency in flagd's fractional evaluation](https://github.com/open-feature/flagd/issues/1737), open across eleven repos.** Until every flagd provider agrees on how it buckets, the same user can land in different variants depending on which SDK evaluates the flag. | ||||||
| - **[OFREP SSE streaming](https://github.com/open-feature/js-sdk-contrib/issues/1498) is unimplemented in six ecosystems.** The protocol supports push updates now, but most OFREP users are still waiting on a poll interval to see a flag change. | ||||||
| - **[Bringing multi-provider up to parity with the JavaScript reference](https://github.com/open-feature/spec/issues/316).** Most SDKs now have a multi-provider, but a few features from the JavaScript implementation did not make it across, so [Java](https://github.com/open-feature/java-sdk/issues/1882), [Kotlin](https://github.com/open-feature/kotlin-sdk/issues/211), and [Swift](https://github.com/open-feature/swift-sdk/issues/109) each have some catching up to do. | ||||||
| - **[Bound-domain initialization](https://github.com/open-feature/spec/issues/403)** is still open in Go, .NET, Kotlin, Rust, and Swift. | ||||||
|
|
||||||
| Come find us on [CNCF Slack](https://cloud-native.slack.com/archives/C0344AANLA1), at our [bi-weekly community meetings](/community/#community-meetings), or on [GitHub](https://github.com/open-feature). | ||||||
| We will be at [KubeCon NA 2026](https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/) in Salt Lake City this November. | ||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Do not call React, iOS, and Android languages.
Line 22 says “eight languages,” but Line 23 lists server languages together with the React framework and iOS and Android platforms. Datadog documents these as separate client-side SDK or platform integrations. Use “eight OpenFeature integrations across server and client platforms,” or split the language and platform counts. (docs.datadoghq.com)
🤖 Prompt for AI Agents