Repository navigation
v2.52.0
Maintenance release rolling up the community and internal fixes accumulated since 2.51.4, plus two additive venue capabilities. All Core (816), Python SDK (260), and TypeScript SDK (86) tests pass. Backward-compatible; minor bump for the new opt-in features.
Added
feat(rain):fetchOrderBooksbatch order-book fetch (#1693).RainExchangenow implements the batchfetchOrderBooks(outcomeIds)surface (emulated by fanning out to the existing single-outcomefetchOrderBook) and declares theemulatedcapability, so Rain participates in the cross-venue batch order-book path.feat(python): SuiBets wallet options (#1657). The Python SDK gains aSuiBetsOptionstyped dict and threadswallet_addressthrough theSuiBetsconstructor into the sidecar credential dict, matching the wallet-option pattern used by other venues.
Fixed
fix(hyperliquid): builder order attribution (#1658).createOrderaccepts optionalbuilder/builderFeeparams, appended to the signed payload in the correct key order (aftergrouping) with address/fee validation. Purely opt-in; existing order flows are unchanged.fix(typescript): WS client connection timeout and retry (#1659). The TS SDK WebSocket client now applies a 10s handshake timeout and a 3-attempt retry loop with backoff, bringing it to parity with the Python client.fix(limitless): wireunwatchOrderBookto WebSocket unsubscribe (#1692).unwatchOrderBooknow forwards toLimitlessWebSocket.unsubscribe, mirroring thewatchOrderBookoverride and the Polymarket pattern.fix(kalshi): expose event metadata endpoint (#1611); syncTradeschema with v2 API drift (#1187, #1282); OHLCV normalizer + docsoutcomeIdparam (#1429).fix(suibets): modelonchainStateto restore accurate order-book liquidity (#1583).fix(polymarket-us): prevent WebSocket connect hangs from a garbage-collected timeout (#1580).fix(limitless): throw onwatchOrderBookfailure instead of silently swallowing it (#1581).fix(gemini-titan): add terms-acceptance flow before order submission (#1326).fix(smarkets):resolutionDatefallback (#1367).fix(sdk): compute detailed execution prices locally (#1308); expose venue filters in fetch params (#1325); align order book field types (#1417).fix(ts-sdk): exportPolymarket_usalias (#1290); raise hosted embedded errors (#1307); require wallet for hosted build orders (#1314); forwardapiSecretcredentials (#1375); make hosted errors catchable by the base class (#1416); export public SDK option types (#1453); exportExchangeOptionsfrom the package root (#1493); add documented event helper methods (#1492); makePositionfields nullable to match Core (#1418); export version constant (#1579).fix(python-sdk): route order-book unwatch via HTTP (#1324); accept wallet address in the Hunch client (#1376); route Myriad wallet address correctly (#1452); typeapi_secretin exchange options (#1511); export filter function types (#1546).
Installation
npm:
npm install pmxtjs@2.52.0
npm install -g @pmxt/cli@2.52.0PyPI:
pip install pmxt==2.52.0Links
What's Changed
- fix(ts-sdk): raise hosted embedded errors by @realfishsam in #1307
- fix(ts-sdk): require wallet for hosted build orders by @realfishsam in #1314
- fix(sdk): compute detailed execution prices locally by @realfishsam in #1308
- fix(python-sdk): route order-book unwatch via HTTP by @realfishsam in #1324
- Fix Smarkets resolutionDate fallback by @jordansilly77-stack in #1367
- fix(gemini-titan): add terms acceptance flow before order submission by @AbhilashG12 in #1326
- fix(sdk): expose venue filters in fetch params by @realfishsam in #1325
- fix(ts-sdk): make hosted errors catchable by base class by @realfishsam in #1416
- fix(python-sdk): accept wallet address in Hunch client by @realfishsam in #1376
- fix(ts-sdk): forward apiSecret credentials by @realfishsam in #1375
- fix(kalshi): OHLCV normalizer + docs outcomeId param by @realfishsam in #1429
- fix(python-sdk): route Myriad wallet address correctly by @realfishsam in #1452
- fix(typescript): make Position fields nullable to match core by @AbhilashG12 in #1418
- fix(typescript): add documented event helper methods by @realfishsam in #1492
- fix(typescript): export public SDK option types by @realfishsam in #1453
- fix(sdks): align order book field types by @realfishsam in #1417
- fix(typescript): export ExchangeOptions from package root by @realfishsam in #1493
- fix(python-sdk): type api_secret in exchange options by @realfishsam in #1511
- fix(ts-sdk): export version constant by @realfishsam in #1579
- Export Python filter function type aliases from package root by @jordansilly77-stack in #1546
- docs(suibets): remove deprecated events endpoint by @AbhilashG12 in #1582
- fix(suibets): model onchainState to restore accurate order book liquidity by @AbhilashG12 in #1583
- fix(limitless): throw on watchOrderBook failure instead of silent swallow by @AbhilashG12 in #1581
- fix(polymarket-us): prevent websocket connect hangs with garbage-collected timeout by @AbhilashG12 in #1580
- fix(kalshi): expose event metadata endpoint by @realfishsam in #1611
- fix(kalshi): sync Trade schema with v2 API drift (#1187) by @AbhilashG12 in #1282
- fix(ts-sdk): export Polymarket_us alias by @DeepCogNeural in #1290
- docs(sdks): align prefunded escrow comments by @Bortlesboat in #1656
- feat(python): add SuiBets wallet options by @Bortlesboat in #1657
- fix(hyperliquid): support builder order attribution by @BridgeAISocial in #1658
- fix(typescript): add connection timeout and retry to WS client by @AbhilashG12 in #1659
- fix(limitless): wire unwatchOrderBook to WebSocket unsubscribe by @JSap0914 in #1692
- feat(rain): add fetchOrderBooks batch order-book fetch by @JSap0914 in #1693
New Contributors
- @jordansilly77-stack made their first contribution in #1367
- @BridgeAISocial made their first contribution in #1658
- @JSap0914 made their first contribution in #1692
Full Changelog: v2.51.4f...v2.52.0f