v4.5.70

baptisteArno/typebot.iov4.5.70Jul 29, 2026by ccxt-release[bot]

AI Summary

This release focuses on performance improvements across multiple programming languages through safeString optimizations and updates CI/CD workflows to use self-hosted GitHub Actions runners. It also includes various bug fixes for exchange integrations, specifically addressing pagination, order routing, and compression issues in client.py.

Key Highlights

  • Performance optimizations (safeString) for Python, Go, Java, C#, and PHP.
  • Migration to self-hosted GitHub Actions runners.
  • Fixes for Bitget private WebSocket order routing and Nado market parsing.
  • Client-side compression support added (RFC 7692).
  • Updates to workflows to address Node 20 version compatibility.

New Features

  • Upgrade WebSocket library to v2 for Nado exchange

Full Release Notes

## What's Changed
* chore(docs): move playground/ and website/ under docs/ by @pcriadoperez in https://github.com/ccxt/ccxt/pull/29302
* perf(python): safeString optimization by @ttodua in https://github.com/ccxt/ccxt/pull/29315
* Update workflows by @frosty00 in https://github.com/ccxt/ccxt/pull/29326
* move to self-hosted github actions runners by @frosty00 in https://github.com/ccxt/ccxt/pull/29328
* github actions complains about old node20 versions by @frosty00 in https://github.com/ccxt/ccxt/pull/29330
* perf(go): safeString optimization by @ttodua in https://github.com/ccxt/ccxt/pull/29319
* fix(Exchange): omit paginationDirection in fetchPaginatedCallDeterministic by @g0rdonL in https://github.com/ccxt/ccxt/pull/29332
* fix(bitget): route UTA private WS order/fill to the right market by @slotheth in https://github.com/ccxt/ccxt/pull/29327
* fix(nado): parseMarkets in python by @carlosmiei in https://github.com/ccxt/ccxt/pull/29334
* perf(base): speed up pure-Python Keccak-256 fallback (~2x) by @pcriadoperez in https://github.com/ccxt/ccxt/pull/29318
* fix(client.py): add compress option (RFC 7692)  by @carlosmiei in https://github.com/ccxt/ccxt/pull/29336
* perf(java): safeString optimization by @ttodua in https://github.com/ccxt/ccxt/pull/29320
* perf(c#): safeString optimization by @ttodua in https://github.com/ccxt/ccxt/pull/29316
* perf(php): safeString optimizations by @ttodua in https://github.com/ccxt/ccxt/pull/29314
* chore: temporarily try gh_token2 by @carlosmiei in https://github.com/ccxt/ccxt/pull/29337
* feat(nado): upgrade ws to v2 by @carlosmiei in https://github.com/ccxt/ccxt/pull/29338
* chore: pushback using github app by @carlosmiei in https://github.com/ccxt/ccxt/pull/29339
* chore: autostash in actions to avoid push error by @carlosmiei in https://github.com/ccxt/ccxt/pull/29340
* chore: disable cleanup old tags by @carlosmiei in https://github.com/ccxt/ccxt/pull/29341


**Full Changelog**: https://github.com/ccxt/ccxt/compare/v4.5.69...v4.5.70