github thomaspoignant/go-feature-flag v1.58.0

latest release: cmd/wasm/v0.3.0
3 hours ago

1.58.0 (2026-11-02)

🙌 Woop! Woop! 🙌
🚀 GO Feature Flag v1.58.0 is here! This release makes flag changes easier to follow, gives you more freedom in how you organize your flags, and makes relay proxy rollouts smoother on Kubernetes.

💬 Flag change notifications in plain language

Your Slack, Discord and Microsoft Teams notifications now describe each change in a readable sentence. You no longer need to compare a list of JSON paths against the flag schema.

Before After
DefaultRule.VariationResult: null => "Default" Default rule now serves Default (was False 0%, True 100%)
Rules: null => [{"name":"rule1", ...}] Targeting rule rule1 added: serves False 20%, True 80% when key eq "not-a-ke"

Every field of the flag format has its own sentence, including scheduled rollout steps. Reordering targeting rules now shows up in the notification too, and Discord is no longer capped at 25 fields.
Check the doc to know more.

🗂️ Load a whole S3 folder of flags

Do you have one huge flag file that several teams edit, and that gets overwritten when two of them update it at the same time? Now each team can have its own file. Leave out item and the S3 retriever loads every matching file in a folder and merges them into one flag set:

retrievers:
  - kind: s3
    bucket: my-featureflag-bucket
    prefix: flags/
    pattern: "*.yaml"
    recursive: true

When polling, only the files whose ETag changed are downloaded again. Deleting a file removes its flags, and if the same flag key appears in two files, you get a clear error naming both files.
Check the doc to know more.

⎈ Smoother relay proxy rollouts on Kubernetes

The Helm chart now supports lifecycle and terminationGracePeriodSeconds. Add a preStop sleep and the relay proxy keeps serving until it has been removed from the endpoints. During rollouts, node drains or Karpenter consolidation, your clients no longer get a burst of 502s while they reconnect.

lifecycle:
  preStop:
    sleep:
      seconds: 10

(Requires Kubernetes 1.30+. The defaults are unchanged.)

🔒 Security

go-jose is bumped to v4.1.6 to fix CVE-2026-116587 (HIGH). We recommend that everyone upgrades.

💜 Thank you, contributors!

A big thank you to @andresmonc, @jh125486, @dorianm and @martincarrere for the work in this release. GO Feature Flag keeps getting better because of all of you 🙏

Ready to try GO Feature Flag v1.58.0? Upgrade now, and tell us what you think! ⭐


🚀 New Features

  • helm: add lifecycle and terminationGracePeriodSeconds options (#6349) (032efde)
  • notifier: describe flag changes as readable sentences (#6302) (ad30205)
  • retriever: S3 retriever can load all files from a folder (#6335) (e7ca2db)

🐛 Bug Fixes

🔧 Chores

  • Bump @openfeature/go-feature-flag-web-provider (#6362) (da30176)
  • Bump @openfeature/go-feature-flag-web-provider (#6366) (d7409d1)
  • Bump @typescript-eslint/eslint-plugin (#6372) (475382a)
  • Bump @typescript-eslint/parser (#6368) (c0e49ce)
  • Bump actions/setup-python from 7.0.0 to 7.1.0 (#6383) (c5e6cd7)
  • Bump anthropics/claude-code-action from 1.0.252 to 1.0.261 (#6378) (9ceb57a)
  • Bump astral-sh/setup-uv from 10.3.0 to 10.3.2 (#6379) (261d1ad)
  • Bump cloud.google.com/go/bigquery from 1.85.0 to 1.86.0 (#6376) (9e2e304)
  • Bump cloud.google.com/go/pubsub/v2 from 2.7.0 to 2.8.0 (#6361) (e5a6312)
  • Bump cloud.google.com/go/storage from 1.69.0 to 1.70.0 (#6374) (4ac2a68)
  • Bump eslint in /examples/openfeature_react/react-app (#6371) (30a4606)
  • Bump eslint in /examples/openfeature_web/webapp (#6363) (e2ce395)
  • Bump github.com/knadh/koanf/v2 from 2.3.8 to 2.4.1 (#6347) (40dd853)
  • Bump github.com/open-feature/go-sdk (#6387) (157db90)
  • Bump github.com/pterm/pterm from 0.12.83 to 0.12.84 (#6271) (25e1e93)
  • Bump github/codeql-action/upload-sarif from 4.39.0 to 4.39.1 (#6381) (103b665)
  • Bump google.golang.org/api from 0.304.0 to 0.305.0 (#6354) (b9ea210)
  • Bump google.golang.org/api from 0.305.0 to 0.306.0 (#6355) (c11778a)
  • Bump google.golang.org/api from 0.306.0 to 0.307.0 (#6360) (3512dd4)
  • Bump google.golang.org/api from 0.307.0 to 0.308.0 (#6375) (04f8d6f)
  • Bump gradle-wrapper (#6364) (d6ef445)
  • Bump org.apache.maven.plugins:maven-surefire-plugin (#6377) (75952d8)
  • Bump postcss in /examples/openfeature_react/react-app (#6370) (f4c98f7)
  • Bump pozil/auto-assign-issue from 4.0.1 to 4.1.0 (#6382) (de3252a)
  • Bump sass in /examples/openfeature_web/webapp (#6367) (ec245e3)
  • Bump the aws group with 3 updates (#6353) (39cc4bb)
  • Bump the aws group with 4 updates (#6359) (ac032df)
  • Bump the aws group with 7 updates (#6373) (760b3b3)
  • Bump vite in /examples/openfeature_react/react-app (#6369) (a03099f)
  • Bump webpack in /examples/openfeature_web/webapp (#6365) (2843ce1)
  • Bump zizmorcore/zizmor-action from 0.7.1 to 0.8.0 (#6380) (9fb0aa0)
  • dependency: Bump module modules/core 0.8.0 (#6392) (63c65e8)
  • relayproxy: add web provider playground and stream blocker dev tools (#6356) (6e87bcd)

Don't miss a new go-feature-flag release

NewReleases is sending notifications on new releases.