Skip to content

Releases: Flagsmith/flagsmith-nodejs-client

v6.2.0

04 Nov 12:35
4c23ff2

Choose a tag to compare

6.2.0 (2025-11-04)

Features

Bug Fixes

  • handle environment documentation pagination (#205) (a83d3a5)

CI

Docs

Other

v6.1.0

18 Jun 12:28
644c5c8

Choose a tag to compare

What's Changed

  • Bump undici from 6.21.1 to 6.21.2 by @dependabot in #184
  • feat: Export FeatureModel to enable custom offline handler by @phiggins in #187
  • Update test running instructions in README and other housekeeping by @phiggins in #186
  • Bump vite from 5.4.18 to 5.4.19 by @dependabot in #185
  • feat: Export BaseFlag, FlagsmithConfig, FlagsmithValue, TraitConfig types by @rolodato in #188

Full Changelog: v6.0.1...v6.1.0

v6.0.1

24 Apr 10:18
58a623d

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v6.0.0...v6.0.1

v6.0.0

24 Mar 19:15
b156a2e

Choose a tag to compare

What's Changed

BREAKING CHANGES

  • Flagsmith.environment was removed. Use getEnvironment instead. This returns a Promise, and not a reference to the environment which could be uninitialised.
  • onEnvironmentChange handlers can now be invoked with an undefined environment if an error occurred.
  • The Flagsmith client now returns an error if initialised with local evaluation enabled but without a server-side SDK key. Previously, it would log an error and continue.

New features

  • Added a new requestRetryDelayMilliseconds which controls how long the SDK will wait before retrying any failed HTTP requests. Previously, this was hard-coded to always be 1 second.
  • Added a getEnvironment method which returns the SDK's current local environment state as a Promise.

Bug fixes

  • getIdentityFlags now uses any provided default flag handler if it fails, instead of just returning an error.
  • Setting environmentRefreshInterval to 0 now prevents any environment polling from happening.
  • Fixed a bug where if the SDK initially failed to fetch the environment document, then getIdentityFlags would always fail with an error even if the environment was later fetched successfully (#177).

Full Changelog: v5.1.1...v6.0.0

v5.1.1

10 Feb 11:55
01f7d0e

Choose a tag to compare

What's Changed

Full Changelog: v5.1.0...v5.1.1

v5.1.0

20 Jan 13:40
2d26062

Choose a tag to compare

What's Changed

  • feat: Allow configuring analytics API endpoint separate from flags API by @rolodato in #168
  • ci: Run tests on currently maintained Node LTS versions by @rolodato in #169

Deprecated

The baseApiUrl constructor argument of AnalyticsProcessor is now deprecated. Instead, pass the full URL to the analytics endpoint using the analyticsUrl parameter. This deprecation only affects you if you are manually managing analytics, rather than having the SDK do it for you using the enableAnalytics option.

Full Changelog: v5.0.1...v5.1.0

v5.0.1

14 Jan 22:25
d52fbac

Choose a tag to compare

What's Changed

  • fix: Return 0 as number flag value instead of undefined by @rolodato in #167

Full Changelog: v5.0.0...v5.0.1

v5.0.0

28 Nov 13:21
3d04ec7

Choose a tag to compare

What's Changed

BREAKING CHANGES

The FlagsmithCache interface has been simplified. In practice, this will not affect most users:

  • Removed has method
  • Removed ttl parameter from set
  • Changed set return type to Promise<void>
  • Changed get return type to Promise<Flags | undefined>

FlagsmithCache since 5.0.0: https://www.tsdocs.dev/docs/flagsmith-nodejs/5.0.0/interfaces/FlagsmithCache.html
FlagsmithCache prior to 5.0.0: https://www.tsdocs.dev/docs/flagsmith-nodejs/4.0.0/interfaces/FlagsmithCache.html

Full Changelog: v4.0.0...v5.0.0

v4.0.0

07 Nov 13:57
2cc95c7

Choose a tag to compare

What's Changed

  • feat: Support transient identities and traits by @novakzaballa in #158
  • feat!: Custom fetch support, remove node-fetch, ESM+CJS dual build, migrate to vitest, TS fixes, test improvements by @rolodato in #162
  • feat!: Remove all uses of CJS, add named Flagsmith export by @rolodato in #163

BREAKING CHANGES

Node.js 18 or later is now required.

Flagsmith is now a named export and not a default export. This only changes how you import the Flagsmith Node.js SDK and not how you use it.

In 3.x and earlier, Flagsmith is the default export:

// ES modules
import Flagsmith from 'flagsmith-nodejs'
// CommonJS
const Flagsmith = require('flagsmith-nodejs')

In 4.x, you must use the named export:

// ES modules
import { Flagsmith } from 'flagsmith-nodejs'
// CommonJS
const { Flagsmith } = require('flagsmith-nodejs')

Full Changelog: v3.3.3...v4.0.0

v4.0.0-beta.1

08 Oct 21:14
7afadbc

Choose a tag to compare

v4.0.0-beta.1 Pre-release
Pre-release

Breaking changes

Node.js >=18 is now required.

New features

  • flagsmith-nodejs is now published as both an ES and CommonJS module. This lets you use either import or require syntax to use this module from your application code
  • Support transient identities and traits by @novakzaballa in #158
  • Support custom fetch implementations

Bug fixes

  • Use AbortSignal to cancel timed out fetch calls by @AlissonRS in #161
  • Fix environment document being fetched twice on startup by @rolodato in #147

Full Changelog: v3.3.3...v4.0.0-beta.1