Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 0 additions & 16 deletions .changeset/quiet-pianos-listen.md

This file was deleted.

2 changes: 1 addition & 1 deletion sdks/go/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# @cloudflare/flagship-go

## 0.4.2
## 0.5.0
2 changes: 1 addition & 1 deletion sdks/go/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@cloudflare/flagship-go",
"version": "0.4.2",
"version": "0.5.0",
"private": true,
"description": "OpenFeature provider for Cloudflare Flagship feature flags in Go.",
"license": "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion sdks/python/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# @cloudflare/flagship-python

## 0.4.2
## 0.5.0
2 changes: 1 addition & 1 deletion sdks/python/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@cloudflare/flagship-python",
"version": "0.4.2",
"version": "0.5.0",
"description": "OpenFeature provider for Cloudflare Flagship feature flags (Python)",
"private": true,
"license": "Apache-2.0",
Expand Down
2 changes: 1 addition & 1 deletion sdks/python/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "uv_build"

[project]
name = "cloudflare-flagship"
version = "0.4.2"
version = "0.5.0"
description = "OpenFeature provider for Cloudflare Flagship feature flags."
readme = "README.md"
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion sdks/python/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions sdks/typescript/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
# @cloudflare/flagship

## 0.5.0

### Minor Changes

- [#30](https://github.com/cloudflare/flagship/pull/30) [`6f75421`](https://github.com/cloudflare/flagship/commit/6f75421e75b612fde1de7c94b1ddc984d60b8344) Thanks [@akshitsinha](https://github.com/akshitsinha)! - Add an injectable `fetch` transport and caller `AbortSignal` propagation to `FlagshipClient`

- `FlagshipProviderOptions.fetch?: typeof globalThis.fetch` sets the transport for a client. It defaults to `globalThis.fetch`, resolved at call time, and the SDK never assigns to the global — so routing evaluations through a Workers service binding or stubbing the transport in tests no longer requires mutating `globalThis.fetch` and exposing unrelated traffic in the same isolate.
- `evaluate(flagKey, context, { fetch?, signal? })` adds per-call overrides. `signal` is merged with the request timeout and with `fetchOptions.signal` (previously silently discarded), so a caller abort now aborts the in-flight HTTP request instead of only abandoning the promise. An already-aborted signal rejects without issuing a request.
- New `FlagshipErrorCode.ABORTED` distinguishes caller cancellation from `TIMEOUT_ERROR`. Caller aborts interrupt in-flight requests and retry delays and are never retried; timeout aborts are still retried as before.
- New `FlagshipError.retryable` reports whether a failure was transient. `408`, `425`, `429`, `5xx`, connection failures, timeouts, and malformed bodies are retryable; other non-2xx responses (`400`, `401`, `403`, `404`, `422`, …) and caller aborts are terminal. This lets consumers implement fail-closed-without-caching instead of guessing from `NETWORK_ERROR` alone.
- `FlagshipServerProvider` and `FlagshipClientProvider` accept and forward `fetch` in HTTP mode; combining it with `binding` throws like the other HTTP-only options.

Behaviour changes for existing callers, who are otherwise unaffected:

- Previously every non-2xx except `400` and `404` was retried. Definitively terminal statuses such as `401`, `403`, and `422` are now propagated immediately.
- The request timeout now also covers reading the response body, so a stalled body read no longer holds the request open past `timeout`.

## 0.4.2

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion sdks/typescript/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@cloudflare/flagship",
"version": "0.4.2",
"version": "0.5.0",
"description": "OpenFeature provider for Flagship feature flags",
"type": "module",
"main": "./dist/index.cjs",
Expand Down
Loading