v4.5.75
Zackriya-Solutions/meetilyv4.5.75Aug 21, 2026by ccxt-release[bot]
AI Summary
Fixes websocket balance routing and address parsing issues across exchanges like Binance, BingX, and Poloniex.
Key Highlights
- Fixed Binance WebSocket balance routing
- Fixed Poloniex futures v3 error codes
- Added WS auth single-flight primitives
New Features
- WS auth single-flight primitives
Full Release Notes
## What's Changed * test(bitmex): skip the last-vs-median ticker check through the wind-down by @kroitor in https://github.com/ccxt/ccxt/pull/29914 * bingx: fix websocket balance routing by @AresArtemius in https://github.com/ccxt/ccxt/pull/29936 * fix(poloniex): map futures v3 error codes by @rayBastard in https://github.com/ccxt/ccxt/pull/29920 * fix(krakenfutures): parse unrealizedPnl in parsePosition by @shuxue6662-a11y in https://github.com/ccxt/ccxt/pull/29937 * fix(binance): deduplicate and merge keepAliveStockListenKey into keepAliveListenKey by @kroitor in https://github.com/ccxt/ccxt/pull/29908 * fix(krakenfutures): don't resolve watchPositions with empty list on malformed frame by @shuxue6662-a11y in https://github.com/ccxt/ccxt/pull/29943 * fix(extended): stop account ws frames falling through to handleOrderBook by @carlotestor in https://github.com/ccxt/ccxt/pull/29942 * fix(binance): guard option and stock from the linear/inverse rewrite in authenticate by @kroitor in https://github.com/ccxt/ccxt/pull/29946 * perf(pro): speed up ArrayCache append hot path -63%..-93% by @carlotestor in https://github.com/ccxt/ccxt/pull/29945 * refactor(binance)!: fold authenticateStock into authenticate by @kroitor in https://github.com/ccxt/ccxt/pull/29950 * fix(cs): settle Future.reject once, under the resolve lock by @kroitor in https://github.com/ccxt/ccxt/pull/29951 * fix(poloniex): TRC20 withdrawals must send network TRX, not TRON by @rayBastard in https://github.com/ccxt/ccxt/pull/29954 * ci: move language workflows back to GitHub-hosted runners by @frosty00 in https://github.com/ccxt/ccxt/pull/29957 * Revert "ci: move language workflows back to GitHub-hosted runners" by @frosty00 in https://github.com/ccxt/ccxt/pull/29959 * fix(build): go ws client casts panic when the transport hands a *WSClient by @carlosmiei in https://github.com/ccxt/ccxt/pull/29962 * fix(cs): normalize mixed numeric boxes in sortBy keys by @kroitor in https://github.com/ccxt/ccxt/pull/29964 * fix(poloniex): map unified clientOrderId to clOrdId for swap orders by @rayBastard in https://github.com/ccxt/ccxt/pull/29966 * fix(phemex): apply amount precision to swap order quantity in createOrder by @rayBastard in https://github.com/ccxt/ccxt/pull/29967 * refactor(binance): centralize user-data type derivation in resolveAuthType by @kroitor in https://github.com/ccxt/ccxt/pull/29969 * fix(krakenfutures): map open_orders cancel reason to unified status by @official-burak in https://github.com/ccxt/ccxt/pull/29970 * fix(kucoin): priceChgPct on contracts is a ratio, so scale it by @mkzung in https://github.com/ccxt/ccxt/pull/29918 * fix(kraken): watchOHLCV returned strings in descending order by @mkzung in https://github.com/ccxt/ccxt/pull/29976 * fix(toobit): strip the _OPEN and _CLOSE suffix from the order side by @mkzung in https://github.com/ccxt/ccxt/pull/29974 * fix(foxbit): drop the misspelt fecthOrderBook capability flag by @mkzung in https://github.com/ccxt/ccxt/pull/29973 * feat(base): ws auth single-flight primitives by @kroitor in https://github.com/ccxt/ccxt/pull/29903 * fix(bitmex): the watchPositions flag is spelled watchPostions by @mkzung in https://github.com/ccxt/ccxt/pull/29972 * refactor(binance): migrate authenticate to the singleFlight primitives by @kroitor in https://github.com/ccxt/ccxt/pull/29977 * fix(aster): prevent concurrent ws auth races via base single-flight guard by @kroitor in https://github.com/ccxt/ccxt/pull/29984 * fix(binance): reject the auth flight on an empty listenKey by @kroitor in https://github.com/ccxt/ccxt/pull/29986 * fix(bingx): prevent concurrent ws auth races via base single-flight guard by @kroitor in https://github.com/ccxt/ccxt/pull/29987 * test(exchange): exempt option markets from ticker percentage bounds by @kroitor in https://github.com/ccxt/ccxt/pull/29988 * chore(tests): store JSON request fixture output as objects by @carlotestor in https://github.com/ccxt/ccxt/pull/29980 * fix(toobit): a reduce-only order was sent on the opposite side by @mkzung in https://github.com/ccxt/ccxt/pull/29982 * perf(js): precise methods (version 1) by @ttodua in https://github.com/ccxt/ccxt/pull/29952 * fix(phemex): correct fetchPositionsADLRank jsdoc name and unify scale getters by @rayBastard in https://github.com/ccxt/ccxt/pull/29985 * chore: remove this[method] from rest side by @carlosmiei in https://github.com/ccxt/ccxt/pull/30003 * revert(pro): drop Client.resolve pending-results queue by @carlotestor in https://github.com/ccxt/ccxt/pull/30008 * fix(java): guard WsClient futures/rejections with a monitor by @carlotestor in https://github.com/ccxt/ccxt/pull/30004 * fix(bitmex, cryptocom): watchPositions never resolves for a symbol-filtered subscription by @mkzung in https://github.com/ccxt/ccxt/pull/29981 * fix(binance): load stock markets if in options by @carlosmiei in https://github.com/ccxt/ccxt/pull/30010 * refactor(pro): inline the ws auth single-flight logic into authenticate() by @carlotestor in https://github.com/ccxt/ccxt/pull/29992 ## New Contributors * @shuxue6662-a11y made their first contribution in https://github.com/ccxt/ccxt/pull/29937 * @official-burak made their first contribution in https://github.com/ccxt/ccxt/pull/29970 **Full Changelog**: https://github.com/ccxt/ccxt/compare/v4.5.74...v4.5.75