Skip to content

feat!: release @launchdarkly/node-client-sdk@4.0.0 - #1834

Open
joker23 wants to merge 1 commit into
mainfrom
skz/sdk-2195/node-client-sdk-next
Open

feat!: release @launchdarkly/node-client-sdk@4.0.0#1834
joker23 wants to merge 1 commit into
mainfrom
skz/sdk-2195/node-client-sdk-next

Conversation

@joker23

@joker23 joker23 commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

This release ports launchdarkly-node-client-sdk onto js-core. The package
moves to @launchdarkly/node-client-sdk and rebases on
@launchdarkly/js-client-sdk-common, picking up the shared client-side
foundation used by the browser and combined-browser SDKs. Consumers
should follow the migration guide for the new initialization flow,
extension surfaces (hooks, inspectors, plugins), and the on-disk cache
format change. See https://launchdarkly.com/docs/sdk/client-side/node-js
for full SDK documentation.

BREAKING-CHANGE: The package name changed from launchdarkly-node-client-sdk to @launchdarkly/node-client-sdk.
BREAKING-CHANGE: Initialization is now done with createClient and start (see docs).
BREAKING-CHANGE: Minimum Node version is now >=18.
BREAKING-CHANGE: The on-disk persistent cache format changed; v3 cache data will not be read by v4 and the anonymous key will be regenerated on first identify.

feat!: identify() resolves an identify result and no longer throws
feat: Evaluation, identify, and track hooks
feat: Inspector support for flag and context state
feat: Plugin extension surface with applicationInfo metadata
feat: Runtime connection-mode control via setConnectionMode
feat: Storage configuration with file-backed default and custom-implementation override
feat: TLS configuration via tlsParams
feat: support client side secure mode with client side id
feat: support wrapper header
feat: Add useMobileKey option to NodeOptions


Note

Low Risk
Documentation and release tooling only; no runtime SDK code changes in this diff.

Overview
Prepares @launchdarkly/node-client-sdk for a 4.0.0 GA release by updating release automation and package docs.

release-please-config.json stops treating packages/sdk/node-client as a prerelease (bump-minor-pre-major / prerelease) and pins the next release with release-as: 4.0.0.

The node-client README drops the pre-release CAUTION block that warned about API instability and pinning to minor versions.

Reviewed by Cursor Bugbot for commit 467b7ba. Bugbot is set up for automated code reviews on this repo. Configure here.

This release ports launchdarkly-node-client-sdk onto js-core. The package
moves to @launchdarkly/node-client-sdk and rebases on
@launchdarkly/js-client-sdk-common, picking up the shared client-side
foundation used by the browser and combined-browser SDKs. Consumers
should follow the migration guide for the new initialization flow,
extension surfaces (hooks, inspectors, plugins), and the on-disk cache
format change. See https://launchdarkly.com/docs/sdk/client-side/node-js
for full SDK documentation.

BREAKING-CHANGE: The package name changed from `launchdarkly-node-client-sdk` to `@launchdarkly/node-client-sdk`.
BREAKING-CHANGE: Initialization is now done with `createClient` and `start` (see docs).
BREAKING-CHANGE: Minimum Node version is now `>=18`.
BREAKING-CHANGE: The on-disk persistent cache format changed; v3 cache data will not be read by v4 and the anonymous key will be regenerated on first identify.

feat!: `identify()` resolves an identify result and no longer throws
feat: Evaluation, identify, and track hooks
feat: Inspector support for flag and context state
feat: Plugin extension surface with `applicationInfo` metadata
feat: Runtime connection-mode control via `setConnectionMode`
feat: Storage configuration with file-backed default and custom-implementation override
feat: TLS configuration via `tlsParams`
feat: support client side secure mode with client side id
feat: support wrapper header
feat: Add useMobileKey option to NodeOptions
@github-actions

Copy link
Copy Markdown
Contributor

@launchdarkly/js-sdk-common size report
This is the brotli compressed size of the ESM build.
Compressed size: 26360 bytes
Compressed size limit: 29000
Uncompressed size: 129188 bytes

@github-actions

Copy link
Copy Markdown
Contributor

@launchdarkly/js-client-sdk size report
This is the brotli compressed size of the ESM build.
Compressed size: 32077 bytes
Compressed size limit: 34000
Uncompressed size: 114525 bytes

@github-actions

Copy link
Copy Markdown
Contributor

@launchdarkly/browser size report
This is the brotli compressed size of the ESM build.
Compressed size: 179691 bytes
Compressed size limit: 200000
Uncompressed size: 831704 bytes

@github-actions

Copy link
Copy Markdown
Contributor

@launchdarkly/js-client-sdk-common size report
This is the brotli compressed size of the ESM build.
Compressed size: 39108 bytes
Compressed size limit: 39300
Uncompressed size: 213642 bytes

@joker23

joker23 commented Jul 31, 2026

Copy link
Copy Markdown
Contributor Author

@cursor review

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Bugbot reviewed your changes and found no new issues!

Comment @cursor review or bugbot run to trigger another review on this PR

Reviewed by Cursor Bugbot for commit 467b7ba. Configure here.

@joker23
joker23 marked this pull request as ready for review July 31, 2026 16:34
@joker23
joker23 requested a review from a team as a code owner July 31, 2026 16:34

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant