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.
0.1.1 - 2025-05-01¶
Fixed¶
KrakenWSClient.__anext__now blocks during reconnection instead of raisingTimeoutError, keeping consumer loops intact across reconnects
0.1.0 - 2025-04-01¶
Added¶
HTTPClientandHTTPAuthenticatedClientwith sync/async support via httpx- HMAC-SHA512 request signing for authenticated endpoints
- REST endpoint modules for 7 API domains (market data, account data, trading, funding, earn, subaccounts, websocket auth)
- ~100+ attrs-based schema models generated from Kraken's OpenAPI spec
ResilienceConfigwith configurable retry transport and exponential backoffRateLimiterwith tier-based token bucket matching Kraken's rate limits (Starter, Intermediate, Pro)- Request/response logging via httpx event hooks
KrakenWSClientfor WebSocket API v2 with automatic reconnection and exponential backoff- Typed subscription parameters for all public channels (ticker, book, trade, OHLC, instrument)
- Typed subscription parameters for private channels (executions, balances) with automatic token injection
TokenManagerfor WebSocket token lifecycle (acquisition, caching, refresh)- All 8 WS v2 trading methods (add_order, edit_order, amend_order, cancel_order, cancel_all, cancel_all_orders_after, batch_add, batch_cancel)
OrderBookManagerwith local order book state, incremental updates, and CRC32 checksum validationSequenceTrackerfor private channel gap detection- Async iterator API (
async for msg in client) py.typedmarker for PEP 561 compliance- Strict mypy configuration