0.5.0
Release notes
This release adds support for DBN v2.
DBN v2 delivers improvements to the Metadata
header symbology, new stype_in
and stype_out
fields for SymbolMappingMsg
, and extends the symbol field length for SymbolMappingMsg
and
InstrumentDefMsg
. The entire change notes are available here.
Users who wish to convert DBN v1 files to v2 can use the dbn-cli
tool available in the databento-dbn crate.
On a future date, the Databento live and historical APIs will stop serving DBN v1.
This release is fully compatible with both DBN v1 and v2, and so should be seamless for most users.
Enhancements
- Made
LiveClient::next_record
,dbn::decode::AsyncDbnDecoder::decode_record
and
decode_record_ref
, anddbn::decode::AsyncRecordDecoder::decode
anddecode_ref
cancel safe. This makes them safe to use within a
tokio::select!
statement - Improved error reporting for
HistoricalClient
when receiving an error from
Databento's API - Improved error messages around API keys
- Improved performance of CSV and JSON encoding
- Added support for emitting warnings from historical API response headers, such as for
future deprecations - Added
symbol_map
method to theResolution
struct returned bysymbology::resolve
that returns aTsSymbolMap
- Added
PartialEq
andEq
implementations for parameter builder classes - Added
upgrade_policy
setter to theLiveClient
builder and a getter to the
LiveClient
- Added
upgrade_policy
optional setter to thetimeseries::GetRangeParams
builder
Breaking changes
- Upgraded
dbn
to 0.14.2. There are several breaking changes in this release as we
begin migrating to DBN encoding version 2 (DBNv2) in order to support the ICE
exchange:- Renamed
dbn::InstrumentDefMsg
todbn::compat::InstrumentDefMsgV1
and added a
newdbn::InstrumentDefMsg
with a longerraw_symbol
field - Renamed
dbn::SymbolMappingMsg
todbn::compat::SymbolMappingMsgV1
and added a
newdbn::SymbolMappingMsg
with longer symbol fields and newstype_in
and
stype_out
fields - Added
symbol_cstr_len
field todbn::Metadata
- Renamed
- Made
Error
non-exhaustive, meaning it no longer be exhaustively matched against, and
new variants can be added in the future without a breaking change - Added an
upgrade_policy
parameter toLiveClient::connect
andconnect_with_addr
.
The builder provides a more stable API since new parameters are usually introduced as
optional
Deprecations
- Deprecated
live::SymbolMap
in favor ofdatabento::dbn::PitSymbolMap