solana_kit_helius 0.4.1 copy "solana_kit_helius: ^0.4.1" to clipboard
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 SensitiveString wrapper class that redacts its value in toString() output
  • HeliusConfig now wraps the API key in SensitiveString internally
  • HeliusConfig.toString() now shows redacted key (e.g., ****123) instead of the full key
  • HeliusConfig.apiKey still returns the raw key for legitimate API calls
  • Removed const from HeliusConfig constructor (breaking change for const usage)

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.

Owner: @ifiokjr · Review: PR #183

0
likes
150
points
30
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Helius client package for Solana Kit Dart.

Homepage
Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

http, solana_kit_codecs_strings, solana_kit_errors, solana_kit_keys, web_socket_channel

More

Packages that depend on solana_kit_helius