Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
[0.4.0] - 2026-08-12
Added
- EVM and Solana query filters now accept a single value or a list of values
(OR-match), matching the existing Hyperliquid
get_fillsbehavior. Applies toget_transactions,get_logs,get_transfers,get_traces,get_state_diffs(EVM) andget_instructions,get_transactions,get_balances,get_token_balances,get_rewards,get_logs(Solana). prefetch_workersparameter onQueryCursor/with_progress()to configure the number of concurrent prefetch shard workers (clamped to 16).sqd_py[fast]extra pulling in uvloop (auto-enabled on import when installed; not available on Windows).
Changed
- Prefetch is now enabled by default (2 workers) whenever the end of the
query range is known, falling back to a single serial worker otherwise.
The
shardsparameter is kept as a deprecated alias forprefetch_workers. - Streaming JSON parsing switched from
ujsontoorjson.
0.3.0 - 2026-08-12
Added
- Expanded
Dataset/EvmDatasetwith 72 EVM chains served by the SQD portal (Arbitrum, Base, Optimism, Polygon, zkSync, and many more), plusDataset.HYPERLIQUIDfor the HyperEVM chain.
0.2.0 - 2026-08-11
Added
- Hyperliquid (HyperCore fills) dataset support via
SQD(dataset="hyperliquid-fills")andget_fills(...). Filters (coin,user,builder,dir,fee_token,cloid) accept a single value or a list (OR-match). examples/hyperliquid_fills.pyandexamples/hyperliquid_candles.py(OHLCV aggregation derived from fills).
[0.1.8] - 2026-01-08
Fixed
- Single shard mode progress bar didn't appear
[0.1.7] - 2026-01-08
Fixed
- Progress bar for non-tty outputs
- Memory leaks
0.1.6 - 2026-01-08
Fixed
- Retried prefetch range streaming on transient aiohttp client errors to avoid crashing on truncated responses
- Disabled tqdm progress bars when stderr is not a TTY (or TERM=dumb) to avoid duplicated output in unsupported terminals, with a plain-text fallback
- Added ETA, rate, and latest block details to the plain-text progress fallback
- Computed plain-text rates from time deltas to avoid 0.00/s on fast block streams
- Show sub-minute elapsed time with fractional seconds in plain-text logs
- Show sub-second elapsed time with millisecond precision in plain-text logs
- Added day-level formatting for long ETAs
- Replaced multi-shard parallel fetching with a two-range prefetch pipeline
- Clamped
shardsto a two-range prefetch window for historical catchup - Made prefetch opt-in (default
shards=1) and marked it experimental
0.1.5 - 2026-01-08
Fixed
- Fixed progress bar disconnect when switching from parallel catchup to live mode: previously, the progress bar would switch to "Live" mode immediately when parallel workers finished fetching, even though the consumer was still processing queued blocks. Now, the switch only happens after all catchup blocks have been consumed
0.1.4 - 2026-01-08
Fixed
- Fixed graceful shutdown in parallel mode: previously, all queued blocks would still be sent to the consumer during shutdown. Now, when shutdown is requested (Ctrl+C / SIGTERM), block forwarding stops immediately
0.1.2 - 2026-01-06
Changed
- Added default
Nonevalues to all optional parameters inEVMQueryrequest builder methods (add_transactions_request,add_logs_request) to make them easier to call directly
0.1.1 - 2026-01-05
Changed
- Improved README documentation
0.1.0 - 2024-12-24
Added
- Initial release
SQDfactory function for creating query buildersEVMQueryfor querying EVM chains (Ethereum, Binance)SolanaQueryfor querying Solana blockchain- Transaction and log querying with field selection
- Async streaming iteration over query results
- Support for
Datasetenum with common chains EvmFieldsandSolanaFieldsfor type-safe field selection- Full type hints support (PEP 561 compatible)