Skip to content

Commit e14e6f9

Browse files
authored
feat!: pre-release @launchdarkly/node-client-sdk as 0.1.0 (#1757)
This PR will do a pre-release of node client sdk. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Medium Risk** > Adds automated npm publishing for a public SDK and pins a shared dependency for release; no application runtime logic changes in the diff, but a mistaken publish or wrong dependency version would affect consumers. > > **Overview** > Prepares **`@launchdarkly/node-client-sdk`** for its first intentional pre-release at **0.1.0** (from 0.0.4), including npm publish wiring and release-please metadata. > > **Release automation:** Adds `packages/sdk/node-client` to manual publish options, a `package-node-client-released` output, and a **`release-node-client`** job (after `release-sdk-client`) that runs `./actions/full-release`. Marks the package **`prerelease: true`** in `release-please-config.json` and syncs `@launchdarkly/js-client-sdk-common` in `node-client/package.json` when `sdk-client` is released. > > **Publish-ready package metadata:** Bumps version in the manifest, `package.json`, and `NodeInfo.ts`. Pins `@launchdarkly/js-client-sdk-common` to **1.29.0** instead of `workspace:^` so the published tarball has a concrete dependency version. > > **Docs:** README switches from experimental placeholder badges to live NPM/CI/docs badges and updates the caution to **pre-release** (API may change; pin minor versions and read `CHANGELOG.md`). > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit b0292bf. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->
1 parent d35654c commit e14e6f9

6 files changed

Lines changed: 45 additions & 28 deletions

File tree

.github/workflows/release-please.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ on:
6262
- packages/sdk/combined-browser
6363
- packages/sdk/shopify-oxygen
6464
- packages/sdk/electron
65+
- packages/sdk/node-client
6566
- packages/sdk/react
6667
- packages/shared/openfeature-server-common
6768
- packages/sdk/openfeature-node-server
@@ -113,6 +114,7 @@ jobs:
113114
package-sdk-openfeature-node-server-released: ${{ steps.release.outputs['packages/sdk/openfeature-node-server--release_created'] }}
114115
package-tooling-client-testing-plugin-released: ${{ steps.release.outputs['packages/tooling/client-testing-plugin--release_created'] }}
115116
package-sdk-vue-released: ${{ steps.release.outputs['packages/sdk/vue--release_created'] }}
117+
package-node-client-released: ${{ steps.release.outputs['packages/sdk/node-client--release_created'] }}
116118
steps:
117119
- uses: googleapis/release-please-action@45996ed1f6d02564a971a2fa1b5860e934307cf7 # v5.0
118120
id: release
@@ -413,6 +415,22 @@ jobs:
413415
workspace_path: packages/tooling/client-testing-plugin
414416
aws_assume_role: ${{ vars.AWS_ROLE_ARN }}
415417

418+
release-node-client:
419+
runs-on: ubuntu-latest
420+
needs: ['release-please', 'release-sdk-client']
421+
permissions:
422+
id-token: write
423+
contents: write
424+
if: ${{ always() && !failure() && !cancelled() && needs.release-please.outputs.package-node-client-released == 'true'}}
425+
steps:
426+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
427+
- id: release-node-client
428+
name: Full release of packages/sdk/node-client
429+
uses: ./actions/full-release
430+
with:
431+
workspace_path: packages/sdk/node-client
432+
aws_assume_role: ${{ vars.AWS_ROLE_ARN }}
433+
416434
release-server-ai:
417435
runs-on: ubuntu-latest
418436
needs: ['release-please', 'release-sdk-server']

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"packages/sdk/cloudflare": "2.7.25",
99
"packages/sdk/combined-browser": "0.1.27",
1010
"packages/sdk/fastly": "0.2.15",
11-
"packages/sdk/node-client": "0.0.4",
11+
"packages/sdk/node-client": "0.1.0",
1212
"packages/sdk/react-native": "10.19.0",
1313
"packages/sdk/server-ai": "1.1.0",
1414
"packages/sdk/server-node": "9.11.2",

packages/sdk/node-client/README.md

Lines changed: 17 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,16 @@
11
# LaunchDarkly Node.js Client-Side SDK
22

3-
<!--
4-
[![NPM][npm-badge]][npm-link]
5-
[![Actions Status][ci-badge]][ci-link]
6-
[![Documentation][ghp-badge]][ghp-link]
7-
[![NPM][npm-dm-badge]][npm-link]
8-
[![NPM][npm-dt-badge]][npm-link]
9-
-->
3+
[![NPM][node-client-npm-badge]][node-client-npm-link]
4+
[![Actions Status][node-client-ci-badge]][node-client-ci]
5+
[![Documentation][node-client-ghp-badge]][node-client-ghp-link]
6+
[![NPM][node-client-dm-badge]][node-client-npm-link]
7+
[![NPM][node-client-dt-badge]][node-client-npm-link]
108

119
> [!CAUTION]
12-
> This SDK is experimental and should NOT be considered ready for production use.
13-
> It may change or be removed without notice and is not subject to backwards
14-
> compatibility guarantees.
15-
16-
<!--
17-
> Pin to a specific minor version and review the [changelog](link-to-changelog) before upgrading.
18-
-->
10+
> This SDK is in pre-release and not subject to backwards compatibility
11+
> guarantees. The API may change based on feedback.
12+
>
13+
> Pin to a specific minor version and review the [changelog](CHANGELOG.md) before upgrading.
1914
2015
## Getting started
2116

@@ -37,13 +32,11 @@ Refer to the [SDK documentation](https://launchdarkly.com/docs/sdk/client-side/n
3732
- [blog.launchdarkly.com](https://blog.launchdarkly.com/ 'LaunchDarkly Blog Documentation') for the latest product updates
3833

3934

40-
<!--
41-
[npm-badge]: https://img.shields.io/npm/v/@launchdarkly/node-client-sdk.svg?style=flat-square
42-
[npm-link]: https://www.npmjs.com/package/@launchdarkly/node-client-sdk
43-
[npm-dm-badge]: https://img.shields.io/npm/dm/@launchdarkly/node-client-sdk.svg?style=flat-square
44-
[npm-dt-badge]: https://img.shields.io/npm/dt/@launchdarkly/node-client-sdk.svg?style=flat-square
45-
[ci-badge]: https://github.com/launchdarkly/js-core/actions/workflows/node-client.yml/badge.svg
46-
[ci-link]: https://github.com/launchdarkly/js-core/actions/workflows/node-client.yml
47-
[ghp-badge]: https://img.shields.io/static/v1?label=GitHub+Pages&message=API+reference&color=00add8
48-
[ghp-link]: https://launchdarkly.github.io/js-core/packages/sdk/node-client/docs/
49-
-->
35+
[node-client-ci-badge]: https://github.com/launchdarkly/js-core/actions/workflows/node-client.yml/badge.svg
36+
[node-client-ci]: https://github.com/launchdarkly/js-core/actions/workflows/node-client.yml
37+
[node-client-npm-badge]: https://img.shields.io/npm/v/@launchdarkly/node-client-sdk.svg?style=flat-square
38+
[node-client-npm-link]: https://www.npmjs.com/package/@launchdarkly/node-client-sdk
39+
[node-client-ghp-badge]: https://img.shields.io/static/v1?label=GitHub+Pages&message=API+reference&color=00add8
40+
[node-client-ghp-link]: https://launchdarkly.github.io/js-core/packages/sdk/node-client/docs/
41+
[node-client-dm-badge]: https://img.shields.io/npm/dm/@launchdarkly/node-client-sdk.svg?style=flat-square
42+
[node-client-dt-badge]: https://img.shields.io/npm/dt/@launchdarkly/node-client-sdk.svg?style=flat-square

packages/sdk/node-client/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@launchdarkly/node-client-sdk",
3-
"version": "0.0.4",
3+
"version": "0.1.0",
44
"description": "LaunchDarkly Client-Side SDK for Node.js",
55
"homepage": "https://github.com/launchdarkly/js-core/tree/main/packages/sdk/node-client",
66
"repository": {
@@ -41,7 +41,7 @@
4141
"test": "jest"
4242
},
4343
"dependencies": {
44-
"@launchdarkly/js-client-sdk-common": "workspace:^",
44+
"@launchdarkly/js-client-sdk-common": "1.29.0",
4545
"launchdarkly-eventsource": "2.2.0"
4646
},
4747
"devDependencies": {

packages/sdk/node-client/src/platform/NodeInfo.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import * as os from 'os';
33
import { Info, PlatformData, SdkData } from '@launchdarkly/js-client-sdk-common';
44

55
const sdkName = 'node-client-sdk';
6-
const sdkVersion = '0.0.4'; // x-release-please-version
6+
const sdkVersion = '0.1.0'; // x-release-please-version
77

88
function processPlatformName(name: string): string {
99
switch (name) {

release-please-config.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,11 @@
106106
"type": "json",
107107
"path": "/packages/tooling/client-testing-plugin/package.json",
108108
"jsonpath": "$.dependencies['@launchdarkly/js-client-sdk-common']"
109+
},
110+
{
111+
"type": "json",
112+
"path": "/packages/sdk/node-client/package.json",
113+
"jsonpath": "$.dependencies['@launchdarkly/js-client-sdk-common']"
109114
}
110115
]
111116
},
@@ -155,6 +160,7 @@
155160
},
156161
"packages/sdk/node-client": {
157162
"bump-minor-pre-major": true,
163+
"prerelease": true,
158164
"extra-files": [
159165
"src/platform/NodeInfo.ts"
160166
]

0 commit comments

Comments
 (0)