From b26118da53329569ff3bca670956f146750e12a0 Mon Sep 17 00:00:00 2001 From: Ivaylo Novakov Date: Fri, 21 Nov 2025 13:06:15 +0100 Subject: [PATCH 1/3] Add instructions on publishing a new SDK version. --- PUBLISH.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 PUBLISH.md diff --git a/PUBLISH.md b/PUBLISH.md new file mode 100644 index 0000000..b4bb8db --- /dev/null +++ b/PUBLISH.md @@ -0,0 +1,20 @@ +# Instructions for publishing a new SDK version + +## Go + +1. Tag a `main` commit with `go/vX.Y.X`. This is enough for the new version to be considered released. +2. Additionally, we can create a new release directly on GitHub. make sure to choose the correct tag, target, and + previous version/tag. That allows you to use the `Generate release notes` button to get a good starting point of the + release notes. + +## TypeScript + +1. Increment the version in `package.json` to what it should be. +2. Run `npm i` in order to update `package-lock.json`. +3. Trigger the `Manual NPM Publish for TS SDK` GitHub action. + +## Rust + +1. Increment the version in all `Cargo.toml` files. +2. Run `cargo build` and `cargo publish --dry-run` in order to update `Cargo.lock`. +3. Run the `Publish Chainlink Data Streams SDK Crate` and `Publish Chainlink Data Streams Report Crate` GitHub actions. From 49cfc8b5c9eac8b04170c46fe91b213ce83db385 Mon Sep 17 00:00:00 2001 From: Ivaylo Novakov Date: Fri, 21 Nov 2025 17:38:37 +0100 Subject: [PATCH 2/3] Update the Rust bit. --- PUBLISH.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/PUBLISH.md b/PUBLISH.md index b4bb8db..a4ebcac 100644 --- a/PUBLISH.md +++ b/PUBLISH.md @@ -17,4 +17,5 @@ 1. Increment the version in all `Cargo.toml` files. 2. Run `cargo build` and `cargo publish --dry-run` in order to update `Cargo.lock`. -3. Run the `Publish Chainlink Data Streams SDK Crate` and `Publish Chainlink Data Streams Report Crate` GitHub actions. +3. Tag a `main` commit with `rust/chainlink-data-streams-report-vX.Y.Z`. This will trigger a GitHub action which will + publish the two crates. From 998eee3230f61ccdac5d64df28dd298f5dc83442 Mon Sep 17 00:00:00 2001 From: Ivaylo Novakov Date: Mon, 1 Dec 2025 12:34:02 +0100 Subject: [PATCH 3/3] Address PR comments. --- PUBLISH.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/PUBLISH.md b/PUBLISH.md index a4ebcac..f3624a8 100644 --- a/PUBLISH.md +++ b/PUBLISH.md @@ -1,5 +1,10 @@ # Instructions for publishing a new SDK version +What this guide covers is how to publish a new SDK package on a package distribution network (where that applies), e.g. +[NPM](https://www.npmjs.com/package/@chainlink/data-streams-sdk) for TypeScript +or [crates.io](https://crates.io/crates/chainlink-data-streams-report) for Rust. As Go doesn't use a package system like +that, the release process is limited to tagging a commit and creating a GitHub release. + ## Go 1. Tag a `main` commit with `go/vX.Y.X`. This is enough for the new version to be considered released.