You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: improve JSON parsing robustness and handle optional Order fields
- Add field existence checks to parsing macros (TIMESTAMP_FROM_JSON, etc.)
- Fix Order deserialization for optional fields (edit_history, attached_order_configuration)
- Support both creation_time and created_time field names
- Enhance error logging with contextual exception details
- Bump version to 0.2.1
Copy file name to clipboardExpand all lines: CHANGELOG.md
+15Lines changed: 15 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,21 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
+
## [0.2.1] - 2026-02-19
9
+
10
+
### Changed
11
+
-**BREAKING:** Renamed WebSocket channel `HEARTBEAT` to `HEARTBEATS` to match Coinbase API specification
12
+
- Improved JSON parsing macros to check for field existence before parsing (`TIMESTAMP_FROM_JSON`, `NANOSECONDS_FROM_JSON`, `DOUBLE_FROM_JSON`, `INT_FROM_JSON`)
13
+
- Enhanced error logging to combine context and error messages for better debugging
14
+
15
+
### Fixed
16
+
- Fixed Order JSON parsing to handle optional fields (`edit_history`, `creation_time`, `current_pending_replace`, `attached_order_configuration`)
17
+
- Fixed Order parsing to support both `creation_time` and `created_time` field names
18
+
- Fixed WebSocket error handling to properly process and dispatch error messages instead of throwing exceptions
19
+
- Fixed user event processing to use correct JSON path for order updates (`event.at("orders")` instead of `j.at("orders")`)
20
+
- Fixed sequence number checks to handle messages without `sequence_num` field
21
+
- Improved null-safety in JSON parsing throughout order and websocket modules
0 commit comments