From 2e29cb3c2eba39a86f7a26f9a0a8d7e475378f8b Mon Sep 17 00:00:00 2001 From: ananas Date: Sat, 28 Feb 2026 17:59:20 +0000 Subject: [PATCH 1/3] chore(libs): bump sdk-libs versions to 0.23.0 --- Cargo.lock | 34 +++++++++---------- Cargo.toml | 34 +++++++++---------- sdk-libs/account-pinocchio/Cargo.toml | 2 +- sdk-libs/account/Cargo.toml | 2 +- sdk-libs/client/Cargo.toml | 2 +- sdk-libs/compressed-token-sdk/Cargo.toml | 2 +- sdk-libs/event/Cargo.toml | 2 +- .../instruction-decoder-derive/Cargo.toml | 2 +- sdk-libs/instruction-decoder/Cargo.toml | 2 +- sdk-libs/macros/Cargo.toml | 2 +- sdk-libs/photon-api/Cargo.toml | 2 +- sdk-libs/program-test/Cargo.toml | 2 +- sdk-libs/sdk-pinocchio/Cargo.toml | 2 +- sdk-libs/sdk-types/Cargo.toml | 2 +- sdk-libs/sdk/Cargo.toml | 2 +- sdk-libs/token-client/Cargo.toml | 2 +- sdk-libs/token-pinocchio/Cargo.toml | 2 +- sdk-libs/token-sdk/Cargo.toml | 2 +- sdk-libs/token-types/Cargo.toml | 2 +- 19 files changed, 51 insertions(+), 51 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0b23ea663c..0e87ebb773 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3654,7 +3654,7 @@ dependencies = [ [[package]] name = "light-account" -version = "0.22.0" +version = "0.23.0" dependencies = [ "anchor-lang", "light-account-checks", @@ -3691,7 +3691,7 @@ dependencies = [ [[package]] name = "light-account-pinocchio" -version = "0.22.0" +version = "0.23.0" dependencies = [ "light-account-checks", "light-compressed-account", @@ -3784,7 +3784,7 @@ dependencies = [ [[package]] name = "light-client" -version = "0.22.0" +version = "0.23.0" dependencies = [ "anchor-lang", "async-trait", @@ -3905,7 +3905,7 @@ dependencies = [ [[package]] name = "light-compressed-token-sdk" -version = "0.22.0" +version = "0.23.0" dependencies = [ "anchor-lang", "arrayvec", @@ -3978,7 +3978,7 @@ dependencies = [ [[package]] name = "light-event" -version = "0.22.0" +version = "0.23.0" dependencies = [ "borsh 0.10.4", "light-compressed-account", @@ -4060,7 +4060,7 @@ dependencies = [ [[package]] name = "light-instruction-decoder" -version = "0.22.0" +version = "0.23.0" dependencies = [ "borsh 0.10.4", "bs58", @@ -4077,7 +4077,7 @@ dependencies = [ [[package]] name = "light-instruction-decoder-derive" -version = "0.3.0" +version = "0.4.0" dependencies = [ "bs58", "darling", @@ -4173,7 +4173,7 @@ dependencies = [ [[package]] name = "light-program-test" -version = "0.22.0" +version = "0.23.0" dependencies = [ "account-compression", "anchor-lang", @@ -4283,7 +4283,7 @@ dependencies = [ [[package]] name = "light-sdk" -version = "0.22.0" +version = "0.23.0" dependencies = [ "anchor-lang", "bincode", @@ -4317,7 +4317,7 @@ dependencies = [ [[package]] name = "light-sdk-macros" -version = "0.22.0" +version = "0.23.0" dependencies = [ "borsh 0.10.4", "darling", @@ -4338,7 +4338,7 @@ dependencies = [ [[package]] name = "light-sdk-pinocchio" -version = "0.22.0" +version = "0.23.0" dependencies = [ "borsh 0.10.4", "light-account-checks", @@ -4354,7 +4354,7 @@ dependencies = [ [[package]] name = "light-sdk-types" -version = "0.22.0" +version = "0.23.0" dependencies = [ "anchor-lang", "borsh 0.10.4", @@ -4484,7 +4484,7 @@ dependencies = [ [[package]] name = "light-token" -version = "0.22.1" +version = "0.23.0" dependencies = [ "anchor-lang", "arrayvec", @@ -4517,7 +4517,7 @@ dependencies = [ [[package]] name = "light-token-client" -version = "0.22.0" +version = "0.23.0" dependencies = [ "borsh 0.10.4", "light-client", @@ -4577,7 +4577,7 @@ dependencies = [ [[package]] name = "light-token-pinocchio" -version = "0.22.0" +version = "0.23.0" dependencies = [ "borsh 0.10.4", "light-account-checks", @@ -4591,7 +4591,7 @@ dependencies = [ [[package]] name = "light-token-types" -version = "0.22.0" +version = "0.23.0" dependencies = [ "anchor-lang", "borsh 0.10.4", @@ -5258,7 +5258,7 @@ dependencies = [ [[package]] name = "photon-api" -version = "0.55.0" +version = "0.56.0" dependencies = [ "openapiv3", "prettyplease", diff --git a/Cargo.toml b/Cargo.toml index 677886f23c..1e7640db6d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -200,19 +200,19 @@ light-hash-set = { version = "4.0.0", path = "program-libs/hash-set" } light-indexed-merkle-tree = { version = "5.0.0", path = "program-libs/indexed-merkle-tree" } light-concurrent-merkle-tree = { version = "5.0.0", path = "program-libs/concurrent-merkle-tree" } light-sparse-merkle-tree = { version = "0.3.0", path = "sparse-merkle-tree" } -light-client = { path = "sdk-libs/client", version = "0.22.0" } -light-event = { path = "sdk-libs/event", version = "0.22.0" } +light-client = { path = "sdk-libs/client", version = "0.23.0" } +light-event = { path = "sdk-libs/event", version = "0.23.0" } light-hasher = { path = "program-libs/hasher", version = "5.0.0", default-features = false } light-macros = { path = "program-libs/macros", version = "2.2.0" } light-merkle-tree-reference = { path = "program-tests/merkle-tree", version = "4.0.0" } light-heap = { path = "program-libs/heap", version = "2.0.0" } light-prover-client = { path = "prover/client", version = "8.0.0" } -light-account = { path = "sdk-libs/account", version = "0.22.0", default-features = false } -light-account-pinocchio = { path = "sdk-libs/account-pinocchio", version = "0.22.0", default-features = false } -light-sdk = { path = "sdk-libs/sdk", version = "0.22.0" } -light-sdk-pinocchio = { path = "sdk-libs/sdk-pinocchio", version = "0.22.0" } -light-sdk-macros = { path = "sdk-libs/macros", version = "0.22.0" } -light-sdk-types = { path = "sdk-libs/sdk-types", version = "0.22.0", default-features = false } +light-account = { path = "sdk-libs/account", version = "0.23.0", default-features = false } +light-account-pinocchio = { path = "sdk-libs/account-pinocchio", version = "0.23.0", default-features = false } +light-sdk = { path = "sdk-libs/sdk", version = "0.23.0" } +light-sdk-pinocchio = { path = "sdk-libs/sdk-pinocchio", version = "0.23.0" } +light-sdk-macros = { path = "sdk-libs/macros", version = "0.23.0" } +light-sdk-types = { path = "sdk-libs/sdk-types", version = "0.23.0", default-features = false } light-compressed-account = { path = "program-libs/compressed-account", version = "0.11.0", default-features = false } light-compressible = { path = "program-libs/compressible", version = "0.6.0", default-features = false } light-token-interface = { path = "program-libs/token-interface", version = "0.5.0" } @@ -220,7 +220,7 @@ light-account-checks = { path = "program-libs/account-checks", version = "0.8.0" light-verifier = { path = "program-libs/verifier", version = "10.0.0" } light-zero-copy = { path = "program-libs/zero-copy", version = "0.6.0", default-features = false } light-zero-copy-derive = { path = "program-libs/zero-copy-derive", version = "0.6.0" } -photon-api = { path = "sdk-libs/photon-api", version = "0.55.0" } +photon-api = { path = "sdk-libs/photon-api", version = "0.56.0" } forester-utils = { path = "forester-utils", version = "2.0.0" } account-compression = { path = "programs/account-compression", version = "2.0.0", features = [ "cpi", @@ -229,11 +229,11 @@ account-compression = { path = "programs/account-compression", version = "2.0.0" light-compressed-token = { path = "programs/compressed-token/program", version = "2.0.0", features = [ "cpi", ] } -light-token-types = { path = "sdk-libs/token-types", version = "0.22.0" } -light-token = { path = "sdk-libs/token-sdk", version = "0.22.1" } -light-token-pinocchio = { path = "sdk-libs/token-pinocchio", version = "0.22.0" } -light-compressed-token-sdk = { path = "sdk-libs/compressed-token-sdk", version = "0.22.0" } -light-token-client = { path = "sdk-libs/token-client", version = "0.22.0" } +light-token-types = { path = "sdk-libs/token-types", version = "0.23.0" } +light-token = { path = "sdk-libs/token-sdk", version = "0.23.0" } +light-token-pinocchio = { path = "sdk-libs/token-pinocchio", version = "0.23.0" } +light-compressed-token-sdk = { path = "sdk-libs/compressed-token-sdk", version = "0.23.0" } +light-token-client = { path = "sdk-libs/token-client", version = "0.23.0" } light-system-program-anchor = { path = "anchor-programs/system", version = "2.0.0", features = [ "cpi", ] } @@ -244,9 +244,9 @@ light-registry = { path = "programs/registry", version = "2.0.0", features = [ create-address-test-program = { path = "program-tests/create-address-test-program", version = "1.0.0", features = [ "cpi", ] } -light-program-test = { path = "sdk-libs/program-test", version = "0.22.0" } -light-instruction-decoder = { path = "sdk-libs/instruction-decoder", version = "0.22.0" } -light-instruction-decoder-derive = { path = "sdk-libs/instruction-decoder-derive", version = "0.3.0" } +light-program-test = { path = "sdk-libs/program-test", version = "0.23.0" } +light-instruction-decoder = { path = "sdk-libs/instruction-decoder", version = "0.23.0" } +light-instruction-decoder-derive = { path = "sdk-libs/instruction-decoder-derive", version = "0.4.0" } light-batched-merkle-tree = { path = "program-libs/batched-merkle-tree", version = "0.11.0" } light-merkle-tree-metadata = { path = "program-libs/merkle-tree-metadata", version = "0.11.0" } aligned-sized = { path = "program-libs/aligned-sized", version = "1.1.0" } diff --git a/sdk-libs/account-pinocchio/Cargo.toml b/sdk-libs/account-pinocchio/Cargo.toml index e82d545116..7cebb7860d 100644 --- a/sdk-libs/account-pinocchio/Cargo.toml +++ b/sdk-libs/account-pinocchio/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-account-pinocchio" -version = "0.22.0" +version = "0.23.0" description = "Light Protocol account types with pinocchio AccountInfo specializations" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/account/Cargo.toml b/sdk-libs/account/Cargo.toml index 62cb3fe5d9..5e309a4d7c 100644 --- a/sdk-libs/account/Cargo.toml +++ b/sdk-libs/account/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-account" -version = "0.22.0" +version = "0.23.0" description = "Light Protocol account types with Solana AccountInfo specializations" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/client/Cargo.toml b/sdk-libs/client/Cargo.toml index 82b04f1c5e..ab55df17f1 100644 --- a/sdk-libs/client/Cargo.toml +++ b/sdk-libs/client/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-client" -version = "0.22.0" +version = "0.23.0" edition = "2021" license = "Apache-2.0" repository = "https://github.com/lightprotocol/light-protocol" diff --git a/sdk-libs/compressed-token-sdk/Cargo.toml b/sdk-libs/compressed-token-sdk/Cargo.toml index 42fd5e8eac..27738b4609 100644 --- a/sdk-libs/compressed-token-sdk/Cargo.toml +++ b/sdk-libs/compressed-token-sdk/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-compressed-token-sdk" -version = "0.22.0" +version = "0.23.0" edition = { workspace = true } description = "Low-level SDK for compressed token operations on Light Protocol" license = "Apache-2.0" diff --git a/sdk-libs/event/Cargo.toml b/sdk-libs/event/Cargo.toml index bea9961bb7..dbdfdf6ef4 100644 --- a/sdk-libs/event/Cargo.toml +++ b/sdk-libs/event/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-event" -version = "0.22.0" +version = "0.23.0" description = "Event types and utilities for Light Protocol" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/instruction-decoder-derive/Cargo.toml b/sdk-libs/instruction-decoder-derive/Cargo.toml index 6be0803219..00d1735500 100644 --- a/sdk-libs/instruction-decoder-derive/Cargo.toml +++ b/sdk-libs/instruction-decoder-derive/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-instruction-decoder-derive" -version = "0.3.0" +version = "0.4.0" description = "Derive macros for InstructionDecoder implementations in Light Protocol" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/instruction-decoder/Cargo.toml b/sdk-libs/instruction-decoder/Cargo.toml index 142fe63515..b88538acc8 100644 --- a/sdk-libs/instruction-decoder/Cargo.toml +++ b/sdk-libs/instruction-decoder/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-instruction-decoder" -version = "0.22.0" +version = "0.23.0" description = "Instruction decoder library for litsvm tests." repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/macros/Cargo.toml b/sdk-libs/macros/Cargo.toml index c5aa68dcd0..046eb4ff1c 100644 --- a/sdk-libs/macros/Cargo.toml +++ b/sdk-libs/macros/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-sdk-macros" -version = "0.22.0" +version = "0.23.0" description = "Macros for Programs using the Light SDK for ZK Compression " repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/photon-api/Cargo.toml b/sdk-libs/photon-api/Cargo.toml index 1f58b111e2..53bfdf8a3f 100644 --- a/sdk-libs/photon-api/Cargo.toml +++ b/sdk-libs/photon-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "photon-api" -version = "0.55.0" +version = "0.56.0" description = "Solana indexer for general compression" license = "Apache-2.0" edition = "2021" diff --git a/sdk-libs/program-test/Cargo.toml b/sdk-libs/program-test/Cargo.toml index 30c14fb019..6f1eaf9b52 100644 --- a/sdk-libs/program-test/Cargo.toml +++ b/sdk-libs/program-test/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-program-test" -version = "0.22.0" +version = "0.23.0" description = "A fast local test environment for Solana programs using compressed accounts and tokens." license = "MIT" edition = "2021" diff --git a/sdk-libs/sdk-pinocchio/Cargo.toml b/sdk-libs/sdk-pinocchio/Cargo.toml index b7dd42a3fe..dea0b14ee3 100644 --- a/sdk-libs/sdk-pinocchio/Cargo.toml +++ b/sdk-libs/sdk-pinocchio/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-sdk-pinocchio" -version = "0.22.0" +version = "0.23.0" description = "Rust SDK for ZK Compression on Solana with Pinocchio features" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/sdk-types/Cargo.toml b/sdk-libs/sdk-types/Cargo.toml index 32a4c0da33..fc51f40318 100644 --- a/sdk-libs/sdk-types/Cargo.toml +++ b/sdk-libs/sdk-types/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-sdk-types" -version = "0.22.0" +version = "0.23.0" edition = "2021" license = "Apache-2.0" repository = "https://github.com/lightprotocol/light-protocol" diff --git a/sdk-libs/sdk/Cargo.toml b/sdk-libs/sdk/Cargo.toml index e5f882fb17..413e1c6b0e 100644 --- a/sdk-libs/sdk/Cargo.toml +++ b/sdk-libs/sdk/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-sdk" -version = "0.22.0" +version = "0.23.0" description = "Rust SDK for ZK Compression on Solana" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/token-client/Cargo.toml b/sdk-libs/token-client/Cargo.toml index 7fd1ef0212..4b2a923011 100644 --- a/sdk-libs/token-client/Cargo.toml +++ b/sdk-libs/token-client/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-token-client" -version = "0.22.0" +version = "0.23.0" description = "Client library for Light Tokens" repository = "https://github.com/Lightprotocol/light-protocol" license = "Apache-2.0" diff --git a/sdk-libs/token-pinocchio/Cargo.toml b/sdk-libs/token-pinocchio/Cargo.toml index 35d857b71f..1f80c4989c 100644 --- a/sdk-libs/token-pinocchio/Cargo.toml +++ b/sdk-libs/token-pinocchio/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-token-pinocchio" -version = "0.22.0" +version = "0.23.0" edition = { workspace = true } description = "Pinocchio SDK for Light Tokens" license = "Apache-2.0" diff --git a/sdk-libs/token-sdk/Cargo.toml b/sdk-libs/token-sdk/Cargo.toml index 664d020372..3a962da238 100644 --- a/sdk-libs/token-sdk/Cargo.toml +++ b/sdk-libs/token-sdk/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-token" -version = "0.22.1" +version = "0.23.0" edition = { workspace = true } description = "SDK for Light Tokens" license = "Apache-2.0" diff --git a/sdk-libs/token-types/Cargo.toml b/sdk-libs/token-types/Cargo.toml index 6c6a215925..8a9d9ef6a4 100644 --- a/sdk-libs/token-types/Cargo.toml +++ b/sdk-libs/token-types/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "light-token-types" -version = "0.22.0" +version = "0.23.0" edition = "2021" description = "Light token sdk types" license = "Apache-2.0" From 808773130bbbc5e9f33cdd7bc95b7e297de4f14b Mon Sep 17 00:00:00 2001 From: ananas Date: Sat, 28 Feb 2026 18:00:30 +0000 Subject: [PATCH 2/3] chore: add sdk-libs-changed-since-tag script --- scripts/sdk-libs-changed-since-tag.sh | 61 +++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100755 scripts/sdk-libs-changed-since-tag.sh diff --git a/scripts/sdk-libs-changed-since-tag.sh b/scripts/sdk-libs-changed-since-tag.sh new file mode 100755 index 0000000000..5ce7729fd0 --- /dev/null +++ b/scripts/sdk-libs-changed-since-tag.sh @@ -0,0 +1,61 @@ +#!/usr/bin/env bash +# Lists sdk-libs crates that have changed since their last git tag. +# For crates with no tag yet, they are always listed. +# +# Usage: ./scripts/sdk-libs-changed-since-tag.sh + +set -euo pipefail + +REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +SDK_LIBS_DIR="$REPO_ROOT/sdk-libs" + +echo "Checking sdk-libs crates for changes since last tag..." +echo "" + +changed=() +no_tag=() + +for dir in "$SDK_LIBS_DIR"/*/; do + [[ -f "$dir/Cargo.toml" ]] || continue + + crate_dir="sdk-libs/$(basename "$dir")" + pkg_name=$(grep -m1 '^name' "$dir/Cargo.toml" | sed 's/name = "//;s/"//') + pkg_version=$(grep -m1 '^version' "$dir/Cargo.toml" | sed 's/version = "//;s/"//') + + # Find the latest tag for this package (pattern: -v*) + last_tag=$(git -C "$REPO_ROOT" tag --sort=-version:refname \ + | grep -E "^${pkg_name}-v" \ + | head -1 || true) + + if [[ -z "$last_tag" ]]; then + no_tag+=("$pkg_name ($pkg_version) — no tag found") + continue + fi + + # Count commits that touched this crate's directory since the last tag + changes=$(git -C "$REPO_ROOT" log --oneline "${last_tag}..HEAD" -- "$crate_dir" | wc -l | tr -d ' ') + + if [[ "$changes" -gt 0 ]]; then + changed+=("$pkg_name ($pkg_version, last tag: $last_tag, $changes commit(s) since)") + fi +done + +if [[ ${#changed[@]} -gt 0 ]]; then + echo "Changed since last tag:" + for entry in "${changed[@]}"; do + echo " $entry" + done + echo "" +fi + +if [[ ${#no_tag[@]} -gt 0 ]]; then + echo "No tag found (never released):" + for entry in "${no_tag[@]}"; do + echo " $entry" + done + echo "" +fi + +if [[ ${#changed[@]} -eq 0 && ${#no_tag[@]} -eq 0 ]]; then + echo "All sdk-libs crates are up to date with their tags." +fi From 612bada7c9560ea01bbb2f9b145bf919beef20ed Mon Sep 17 00:00:00 2001 From: ananas Date: Sat, 28 Feb 2026 22:06:26 +0000 Subject: [PATCH 3/3] fix: sort imports alphabetically in integration_tests.rs to pass rustfmt lint --- .../csdk-anchor-full-derived-test/tests/integration_tests.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk-tests/csdk-anchor-full-derived-test/tests/integration_tests.rs b/sdk-tests/csdk-anchor-full-derived-test/tests/integration_tests.rs index 9b40b900e5..2c3e82972a 100644 --- a/sdk-tests/csdk-anchor-full-derived-test/tests/integration_tests.rs +++ b/sdk-tests/csdk-anchor-full-derived-test/tests/integration_tests.rs @@ -3863,7 +3863,7 @@ async fn test_d9_edge_many_literals() { #[tokio::test] async fn test_d9_edge_mixed() { use csdk_anchor_full_derived_test::d9_seeds::{ - edge_cases::{AB, SEED_123, _UNDERSCORE_CONST}, + edge_cases::{_UNDERSCORE_CONST, AB, SEED_123}, D9EdgeMixedParams, };