solana_kit_helius 0.4.1
solana_kit_helius: ^0.4.1 copied to clipboard
Helius client package for Solana Kit Dart.
Changelog #
All notable changes to this project will be documented in this file.
This changelog is managed by monochange.
solana_kit_helius 0.3.2 (2026-05-30) #
🚀 Feature #
Detached from main group
This package is now released independently rather than as part of the main solana_kit group. The Helius SDK integration is a standalone provider package that does not depend on the core solana_kit release cycle, so an independent release track is more appropriate.
Owner: Ifiok Jr. · Introduced in: fccec7f · Last updated in: 93b3cd3
🐛 Fixed #
Add per-package coverage badges
Add codecov flags and per-package coverage badges to all package READMEs.
Owner: Ifiok Jr. · Introduced in: bed1b1f · Last updated in: 93b3cd3
Add Helius JsonReader and error context
Introduce internal JsonReader helper and structured error…
Introduce internal JsonReader helper and structured error context for Helius type deserialization.
JsonReader
Add a JsonReader class in lib/src/internal/json_reader.dart that wraps a raw Map<String, Object?> and provides typed accessor methods (requireString, requireInt, optString, optEnum, requireDecodedList, etc.). This eliminates manual ! as T casts scattered across every fromJson factory in the Helius type system.
All type files (auth_types.dart, das_types.dart, enhanced_types.dart, priority_fee_types.dart, rpc_v2_types.dart, smart_transaction_types.dart, staking_types.dart, wallet_types.dart, webhook_types.dart, zk_types.dart) are migrated to use JsonReader, making deserialization more readable and ensuring consistent FormatException messages when a required field is absent or null.
Structured error context
JsonRpcClient and RestClient now throw errors via createSolanaError with structured context keys (methodName, operation, statusCode, url) instead of plain SolanaError constructors. This gives downstream consumers machine-readable error metadata for logging and diagnostics.
Impact
No public API changes. All JsonReader usage is internal to lib/src/. Deserialization behavior is functionally equivalent but error messages are now consistent FormatException instances rather than raw TypeError/CastError from Dart's as operator.
Owner: Ifiok Jr. · Introduced in: 6fd8642 · Last updated in: 0ee3d60
Add Helius shared transport contract tests
Owner: Ifiok Jr. · Introduced in: dfcfa4c · Last updated in: a526ea3
Harden Helius WebSocket handling
Harden Helius WebSocket handling with secure-by-default URL validation, better subscription error propagation, and correct unsubscribe method routing.
Owner: Ifiok Jr. · Introduced in: a004fbf · Last updated in: 0ee3d60
Redact API keys in Helius config output
SEC-01: Redact API keys in HeliusConfig.toString() output to prevent accidental exposure in logs, error messages, or debug output.
- Added
SensitiveStringwrapper class that redacts its value intoString()output HeliusConfignow wraps the API key inSensitiveStringinternallyHeliusConfig.toString()now shows redacted key (e.g.,****123) instead of the full keyHeliusConfig.apiKeystill returns the raw key for legitimate API calls- Removed
constfromHeliusConfigconstructor (breaking change forconstusage)
Owner: Ifiok Jr. · Introduced in: 21ae653 · Last updated in: 12316d5
Constant-time comparison for sensitive strings
SEC-03: Use constant-time comparison for SensitiveString equality to prevent timing side-channel attacks.
- SensitiveString.operator== now uses constant-time byte comparison
- Prevents attackers from learning how many characters match between two secrets
- Added test verifying no early exit on mismatch
Owner: Ifiok Jr. · Introduced in: 76f2c14 · Last updated in: 12316d5
solana_kit_helius 0.4.0 (2026-06-01) #
💥 Breaking Change #
Raise minimum Dart SDK to 3.12
Raise the minimum supported Dart SDK constraint to ^3.12.0 across public Dart packages.
This is a breaking change because consumers must use Dart 3.12 or newer. Flutter consumers must use a Flutter SDK that bundles Dart 3.12 or newer.
environment:
sdk: ^3.12.0
Owner: Ifiok Jr. · Introduced in: 32d5d36
🐛 Fixed #
Align Helius v3 defaults
Update the mainnet REST host to match upstream Helius v3.0.0, add Admin project usage, webhook toggle, and getTransfersByAddress parity, refresh package metadata, and document the exact upstream commit used for the v3 audit.
Owner: Ifiok Jr. · Introduced in: ee30ae0
solana_kit_helius 0.4.1 (2026-06-03) #
🐛 Fixed #
Harden security audit findings
Disable placeholder Helius auth signing, redact Helius API keys from JSON-RPC error context, validate malformed encrypted mobile-wallet messages before slicing, and reject negative mobile-wallet sequence numbers.
Owner: @ifiokjr · Review: PR #181
Add Helius transaction parity helpers
Add helpers for sender regions, sendViaSender, and createTxMessage. Expand sender and broadcast coverage.
Owner: @ifiokjr · Review: PR #183
Add Helius auth signing helpers
Implement upstream-compatible Helius auth message signing with Ed25519 signatures. Also add request factories for secret key bytes and key pairs.