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.2.1 - 2026-03-07
- Extended prelude with
ws_typesexports:AuthResponse,ConnectionState,HeartbeatStatus,HelloResponse,JsonRpcError,JsonRpcNotification,JsonRpcRequest,JsonRpcResponse,JsonRpcResult,TestResponse,WebSocketMessage
- Updated Rust edition to 2024
0.2.0 - 2026-03-07
- GitHub Actions CI/CD pipeline (build, lint, test, coverage, semver)
- Dependabot configuration for automated dependency updates
- Local
utilsmodule withsetup_logger()function - Trading methods over WebSocket:
buy(),sell(),cancel(),cancel_all(),cancel_all_by_currency(),cancel_all_by_instrument(),edit() - New trading types:
OrderRequest,EditOrderRequest,OrderResponse,OrderInfo,OrderType,TimeInForce,Trigger,TradeExecution - Request builders for all trading operations
- Comprehensive unit tests for trading module (36 tests)
Unknownvariant toSubscriptionChannelfor unrecognized channel patternsis_unknown()helper method onSubscriptionChannel- Comprehensive tests for all subscription channel parsing patterns (45 tests)
- Account methods over WebSocket:
get_positions(),get_account_summary(),get_order_state(),get_order_history_by_currency() - Account types:
Position,AccountSummary,CurrencySummary,Direction - Request builders for all account operations
- Comprehensive unit tests for account module (25+ tests)
- Position management methods over WebSocket:
close_position(),move_positions() - Position types:
ClosePositionResponse,CloseTrade,CloseOrder,MovePositionTrade,MovePositionResult - Request builders for position management operations
- Comprehensive unit tests for position module (25+ tests)
- Subscription management methods:
public_unsubscribe_all(),private_unsubscribe_all() - Request builders for unsubscribe_all operations
- Unit tests for unsubscribe_all and SubscriptionManager.clear()
parse_channel_type()now correctly handles all 14SubscriptionChannelvariants instead of only 5- Unknown channels no longer incorrectly default to
Ticker(String::new())
subscriptions::SubscriptionChannel- usemodel::SubscriptionChannelinstead for full channel support
- BREAKING: Removed
deribit-basedependency - crate is now fully self-contained - Removed
pub use deribit_base;re-export fromlib.rs - Removed
pub use deribit_base::prelude::*;fromprelude.rs
- Added
tracing-subscriberdependency for logger functionality
- Replace
deribit_basemacros withpretty-simple-displayderive macros - Update dependency versions to latest stable releases
- tokio: 1.0 → 1.50
- tokio-tungstenite: 0.27 → 0.28
- deribit-base: 0.2 → 0.2.6
- rustls: 0.23 → 0.23.31
- thiserror: 2.0 → 2.0.18
0.1.1 - 2024-03-05
- Bump
deribit-basedependency to 0.2 - Remove commented-out workspace dependency
- Mass quote validation logic improvements
- WebSocket client resilience enhancements
0.1.0 - 2024-03-04
- Initial release
- WebSocket client for Deribit API real-time data
- JSON-RPC 2.0 message handling
- Subscription management for market data channels
- Mass quote operations support
- MMP (Market Maker Protection) group management
- Callback-based notification handling
- TLS/SSL secure connections via rustls
- Async/await support with Tokio runtime
- Comprehensive error handling
- Example implementations for common use cases