v3.0.1
What's New
FuturesBuilder::any_month() for open contract_details queries (#668)
Build a month-less futures contract on the typed builder path, for the open-query / front-month-resolution workflow — pass a symbol/exchange/currency-only contract to contract_details(..), enumerate listings, and pick the front month yourself. A forgotten month still fails to compile; .any_month() is the explicit opt-out.
let query = Contract::futures("ES")
.on_exchange("CME")
.in_currency("USD")
.any_month()
.build();Bug Fixes
Fix async Subscription accessors in the migration guide (#669)
The migration guide documented async data-only consumption with next_data() / stream() / data_stream() — sync-only methods that don't exist on the async side. The async Subscription<T> is a futures::Stream; corrected to filter_data() + .next().await.
let mut data = subscription.filter_data();
while let Some(result) = data.next().await {
// result: Result<T, Error>
}