github solana-foundation/solana-go v1.17.0

latest releases: v1.20.0, v1.19.0, v1.18.0...
one month ago

What's Changed

Performance

  • 16x faster base58 encoding/decoding — migrated to fd_base58 algorithm (ported from Firedancer) with hand-written ARM64/AMD64 assembly. PublicKey.String() drops from 937ns to 57ns. by @sonicfromnewyoke in #379

Bug Fixes

  • Fix SOL/WSOL address mismatch — SolMint and WrappedSol were incorrectly pointing to the same address by @sonicfromnewyoke in #378
  • Fix message version detection and add transaction validation (Sanitize, HasDuplicates, VerifyWithResults) to match Rust SDK by @sonicfromnewyoke in #381
  • Fix WebSocket client goroutine/channel leaks, race conditions, and premature Close() returns — now passes -race flag by @sonicfromnewyoke in #383
  • Actualize SimulateTransaction to match official Solana RPC spec — added InnerInstructions, MinContextSlot, ReturnData, and more by @sonicfromnewyoke in #382

New Features

  • Add SetLoadedAccountsDataSizeLimit instruction to compute budget program by @0xvbetsun in #310
  • Add UpgradeNonceAccount instruction to system program by @datmedevil17 in #355
  • Add token-program-aware ATA helpers for Token-2022 support by @lgalabru in #375
  • Implement GetStakeMinimumDelegation RPC method by @sonicfromnewyoke in #372

Maintenance

  • Replace deprecated Go patterns (ioutilio, interface{}any, sort.Sliceslices.SortFunc) by @sonicfromnewyoke in #373
  • Actualize documentation — streamlined README from ~3,000 to ~865 lines, extracted 63 examples into testable functions by @sonicfromnewyoke in #372

Issues Closed

#311, #327, #334, #270, #350

New Contributors

Full Changelog: v1.16.0...v1.17.0

Don't miss a new solana-go release

NewReleases is sending notifications on new releases.