github solana-foundation/solana-go v2.3.0
v2.3.0 — v1.26.0 parity: Go 1.26 minimum, decoding hardening & jsonParsed precision

3 hours ago

Brings the v2 line up to parity with v1.26.0. No module-path changes since v2.2.0.

Install

go get github.com/solana-foundation/solana-go/v2@v2.3.0

Minimum Go is now 1.26 (was 1.25 in v2.2.0), required by the golang.org/x/crypto v0.57.0 upgrade in #516. Go 1.25 is out of support and did not receive the CVE-2026-111943 fix, so Go 1.26.10 / 1.27.3 or later is recommended.

What's changed

Fixes

  • Reject oversized element counts in ExtendLookupTable and VoteStateUpdate instruction decoding (#513)
  • Preserve numeric precision in jsonParsed instruction info (#488) — see the note below
  • Restrict workflow token permissions and bump x/net, x/crypto (#516)

Maintenance

  • Replace deprecated terminal and KMS APIs (#514)
  • Drop end-of-life Go 1.25 from CI (#515)

Note on #488

Re-marshalling a parsed instruction's Parsed field now reproduces the node's numbers exactly: values above 2^53 keep their digits, and decoding them into a uint64 field no longer fails. Numbers also keep the node's original spelling (1.0 stays 1.0 rather than becoming 1), so JSON snapshot tests may show a diff even though the values are unchanged. Nothing else is observable outside the rpc package.

Staying on v1?

The v1 line continues from main (github.com/gagliardetto/solana-go, latest v1.26.0) and carries everything above. v2 differs from v1 only by the module path and the breaking changes listed in the v2.0.0 release notes, plus the VoteAccountsResult.EpochCredits type change from v2.1.0.


Full changelog: v2.2.0...v2.3.0

Don't miss a new solana-go release

NewReleases is sending notifications on new releases.