v4.5.59
Schniz/fnmv4.5.59Jun 16, 2026by github-actions[bot]
AI Summary
This release focuses on migrating the build system to rspack, upgrading the codebase to TypeScript 5, and addressing various exchange-specific bugs and documentation updates.
Key Highlights
- Migration to rspack for bundling instead of webpack
- Upgrade to TypeScript 5
- Security patches for playground and website dependencies (postcss/dompurify)
- Exchange-specific fixes for Aster (percentage calculation), Bitget (non-ASCII symbols), and Bybit (WebSocket order book)
Breaking Changes
- fix(precise)!: strict bools
New Features
- HTX V5 linear swap order support
- Generalized instead of Binance documentation
- Addition of status/ table to docs
Full Release Notes
## What's Changed * feat(rspack): use rspack instead of webpack for bundling by @frosty00 in https://github.com/ccxt/ccxt/pull/28851 * fix(docs): repair broken internal doc links at their source by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28848 * feat(docs): add status/ table by @carlosmiei in https://github.com/ccxt/ccxt/pull/28858 * fix(docs): exchange-status import by @carlosmiei in https://github.com/ccxt/ccxt/pull/28859 * fix(docs): keep translated exchanges tables in sync, drop dead link by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28856 * docs: generalizing instead of binance by @ttodua in https://github.com/ccxt/ccxt/pull/28864 * docs: remove extra example by @ttodua in https://github.com/ccxt/ccxt/pull/28860 * docs: eslint `no-named-as-default-member` by @ttodua in https://github.com/ccxt/ccxt/pull/28867 * docs: apex remove & add faq by @ttodua in https://github.com/ccxt/ccxt/pull/28863 * build(deps): update @rspack/cli and @rspack/core to 2.0.8 by @frosty00 in https://github.com/ccxt/ccxt/pull/28869 * chore(deps): bump esbuild from 0.28.0 to 0.28.1 in /website by @dependabot[bot] in https://github.com/ccxt/ccxt/pull/28866 * fix(precise)!: strict bools by @ttodua in https://github.com/ccxt/ccxt/pull/28854 * chore(deps): bump uuid and @rspack/cli by @dependabot[bot] in https://github.com/ccxt/ccxt/pull/28853 * chore(deps): bump webpack-dev-server and @rspack/cli by @dependabot[bot] in https://github.com/ccxt/ccxt/pull/28852 * chore(huobi): remove alias by @ttodua in https://github.com/ccxt/ccxt/pull/28788 * move some static dependencies into package.json by @frosty00 in https://github.com/ccxt/ccxt/pull/28850 * refactor(safeDict): use isDictionary by @ttodua in https://github.com/ccxt/ccxt/pull/28862 * fix: use isDictionary instead of `object` type comparison by @ttodua in https://github.com/ccxt/ccxt/pull/28861 * docs: normalize legacy docs.ccxt.com/#/?id= structure links to the redirecting form by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28879 * fix(php): is_json_encoded_object by @ttodua in https://github.com/ccxt/ccxt/pull/28880 * chore(playground): patch postcss & dompurify security alerts by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28871 * chore(website): patch postcss security alert by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28873 * chore(examples): patch postcss alert in nextjs-page-router example by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28874 * docs: watch symbols example by @ttodua in https://github.com/ccxt/ccxt/pull/28868 * chore(coinbaseadvanced): remove alias by @ttodua in https://github.com/ccxt/ccxt/pull/28787 * fix(playground): route AI assistant through the egress proxy by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28876 * ci(playground): fix deploy smoke test + bump actions to Node 24 by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28872 * fix(cs): getProperty for fields too by @ttodua in https://github.com/ccxt/ccxt/pull/28881 * migrate to typescript 5 by @frosty00 in https://github.com/ccxt/ccxt/pull/28870 * feat(docs): make /docs/examples a hub — citations + Awesome showcases by @pcriadoperez in https://github.com/ccxt/ccxt/pull/28875 * test: add `.has` tests by @ttodua in https://github.com/ccxt/ccxt/pull/28885 * fix(binance): ws .has inheritance fixes by @ttodua in https://github.com/ccxt/ccxt/pull/28886 * chore: hibachi skip ts warning by @ttodua in https://github.com/ccxt/ccxt/pull/28887 * fix(aster): fetchTicker(): 'percentage' is off by factor of 100 by @Shiven0504 in https://github.com/ccxt/ccxt/pull/28889 * chore: try to update package-lock by @carlosmiei in https://github.com/ccxt/ccxt/pull/28891 * fix(bitget): handle non ascii symbols by @carlosmiei in https://github.com/ccxt/ccxt/pull/28890 * fix(bybit): watchOrderBook in go by @carlosmiei in https://github.com/ccxt/ccxt/pull/28893 * chore(deps): bump js-yaml from 4.1.1 to 4.2.0 in /website by @dependabot[bot] in https://github.com/ccxt/ccxt/pull/28892 * feat(htx): V5 linear swap order support by @Dan-krm in https://github.com/ccxt/ccxt/pull/28792 **Full Changelog**: https://github.com/ccxt/ccxt/compare/v4.5.58...v4.5.59