github anza-xyz/kit v6.8.0

5 hours ago

@solana/kit

v6.8.0 (2026-04-10)

Minor Changes

  • [@solana/errors, @solana/keys, @solana/signers] #1534 43bc570 Thanks @lorisleiva! - Add grindKeyPair, grindKeyPairs, grindKeyPairSigner, and grindKeyPairSigners for mining vanity key pairs whose base58-encoded public key matches a RegExp or a custom predicate. Supports amount for mining multiple key pairs, extractable for forwarding to the underlying generateKeyPair call, concurrency (defaulting to 32) for batched parallel key generation, and abortSignal for cancellation. Regex matchers are statically checked for base58-alphabet violations at runtime (after stripping escapes, character classes, quantifiers, and groups) to catch common typos like /^sol0/.

  • [@solana/errors] #1526 ffb7665 Thanks @mcintyre94! - Add SOLANA_ERROR__WALLET__NOT_CONNECTED error code for when a wallet operation is attempted without a connected wallet.

  • [@solana/keys, @solana/signers] #1531 d79f8d1 Thanks @lorisleiva! - Add an optional extractable argument to generateKeyPair and generateKeyPairSigner. It defaults to false, preserving the existing secure-by-default behavior, but can be set to true when you need to export the generated private key bytes via crypto.subtle.exportKey().

  • [@solana/keys, @solana/signers] #1537 fdfcb6c Thanks @lorisleiva! - Add writeKeyPair and writeKeyPairSigner helpers for persisting an extractable key pair to disk as a JSON byte array, matching the format produced by solana-keygen. Missing parent directories are created automatically, and written files use mode 0600. These helpers are Node-only and refuse to overwrite an existing file unless the caller sets unsafelyOverwriteExistingKeyPair: true.

  • [@solana/kit] #1528 09a7509 Thanks @mcintyre94! - Add createReactiveStoreWithInitialValueAndSlotTracking(), a helper that combines an initial RPC fetch with an ongoing subscription into a single ReactiveStore. Uses slot-based comparison to ensure only the most recent value is kept, regardless of arrival order. The store state is a SolanaRpcResponse<TItem>. Compatible with useSyncExternalStore, Svelte stores, and other reactive primitives.

  • [@solana/kit] #1536 cec688e Thanks @mcintyre94! - Add createAsyncGeneratorWithInitialValueAndSlotTracking, an async generator alternative to createReactiveStoreWithInitialValueAndSlotTracking that yields values from both an RPC fetch and an ongoing subscription, silently dropping any value at a slot older than the last seen.

  • [@solana/plugin-interfaces] #1530 f8d6131 Thanks @lorisleiva! - Add ClientWithIdentity interface for clients that provide a default identity signer. Whereas ClientWithPayer describes the signer responsible for paying transaction fees and storage costs, ClientWithIdentity describes the signer whose assets the application is acting upon — such as the authority over accounts, tokens, or other on-chain assets owned by the current user. In many apps the payer and identity refer to the same signer, but they can differ when a service pays fees on behalf of a user.

  • [@solana/rpc-subscriptions-spec, @solana/subscribable] #1524 f53ce07 Thanks @mcintyre94! - Add ReactiveStore type and createReactiveStoreFromDataPublisher() to @solana/subscribable, and a reactive() method to pending subscriptions in @solana/rpc-subscriptions-spec that returns a reactive store compatible with useSyncExternalStore, Svelte stores, and other reactive primitives.

Patch Changes

  • [@solana/accounts, @solana/addresses, @solana/assertions, @solana/codecs, @solana/codecs-core, @solana/codecs-data-structures, @solana/codecs-numbers, @solana/codecs-strings, @solana/compat, @solana/errors, @solana/fast-stable-stringify, @solana/functional, @solana/instruction-plans, @solana/instructions, @solana/keys, @solana/kit, @solana/nominal-types, @solana/offchain-messages, @solana/options, @solana/plugin-core, @solana/plugin-interfaces, @solana/program-client-core, @solana/programs, @solana/promises, @solana/rpc, @solana/rpc-api, @solana/rpc-graphql, @solana/rpc-parsed-types, @solana/rpc-spec, @solana/rpc-spec-types, @solana/rpc-subscriptions, @solana/rpc-subscriptions-api, @solana/rpc-subscriptions-channel-websocket, @solana/rpc-subscriptions-spec, @solana/rpc-transformers, @solana/rpc-transport-http, @solana/rpc-types, @solana/signers, @solana/subscribable, @solana/sysvars, @solana/transaction-confirmation, @solana/transaction-messages, @solana/transactions, @solana/wallet-account-signer, @solana/webcrypto-ed25519-polyfill] #1532 667a0f0 Thanks @mcintyre94! - Update the TypeScript peer dependency from ^5.0.0 to >=5.0.0 to allow TypeScript 6 and above.

Don't miss a new kit release

NewReleases is sending notifications on new releases.