Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 16 Jul 21:06
· 66 commits to main since this release
0f223b8

The performance release. Bulk downloads are dramatically faster, streaming is far lighter on CPU, and the last SDK-invented surface is gone so Dx matches the terminal 1:1.

Highlights

  • Bulk-download throughput. 8 MB HTTP/2 windows (#1204) plus automatic sharding of large history pulls across your tier's concurrency (#1206), up to ~5.6x on Pro on a full-day options chain, with no call-site change.
  • Streaming wait mode (#1208, closes #1207). spin / busyspin / park / backoff; backoff keeps low latency while data flows and drops to a few percent of a core when the market is quiet, fixing the 100%-idle-CPU busy-spin.
  • Terminal-parity cleanup. Removed the midpoint and is_open derived columns, flush_mode, host_selection, two reconnect_jitter variants, interval snapping, and client-side list re-sorting.
  • More config-file coverage. bulk_fetch, shard_concurrency, and the market-data timeout and buffered-warn knobs are now settable in the [market_data] TOML section.
  • Rust builds need no protoc. The crate ships its committed gRPC snapshot and only regenerates under the grpc-codegen feature.

Breaking changes

Breaking configuration-surface changes (config renames, removed derived columns). Each has a one-line migration note in CHANGELOG.md.

Install

pip install -U thetadatadx-py
npm install thetadatadx-ts@latest
cargo add thetadatadx-rs

Thanks

@aukaost for the throughput architecture: the 8 MB window and the concurrency-sharding design behind these speedups. @zakissimo for the idle-CPU report that drove the wait-mode work. And everyone running Dx in production and filing feedback.