Releases: databento/dbn
Releases · databento/dbn
0.20.0
Release notes
Enhancements
- Added new
SType
variants for reference data:Isin
,UsCode
,BbgCompId
,BbgCompTicker
,Figi
,FigiTicker
- Added new publisher value for
DBEQ.SUMMARY
Breaking changes
- Renamed
SType::Nasdaq
variant toSType::NasdaqSymbol
- Renamed
SType::Cms
variant toSType::CmsSymbol
0.19.2
Release notes
Bug fixes
- Fixed issue where
AsyncDynReader
would only decode the first frame of multi-frame
Zstandard files
0.19.1
Release notes
Bug fixes
- Update
rtype_dispatch
andschema_dispatch
macros forBboMsg
- Update
RecordEnum
andRecordRefEnum
forBboMsg
0.19.0
Release notes
Enhancements
- Added
BboMsg
record struct for futurebbo-1m
andbbo-1s
schemas - Upgraded
pyo3
version to 0.22.1 - Upgraded
json-writer
to 0.4
Breaking changes
- Added
Default
trait implementation forMbp1Msg
due to it no longer needing
to support multiplertype
values. Thedefault_for_schema
function has been removed - Changed
Bbo1sMsg
andBbo1mMsg
to be aliases forBboMsg
- Changed the default value of the
side
fields toSide::None
- Reordered parameters and added defaults to Python
Metadata
initializer to match
required arguments in Rust
0.18.3
Release notes
Bug fixes
- Fixed issue where DBN encoders would permit symbols in the metadata that left no space
for a null terminator - Updated metadata length calculation to respect
symbol_cstr_len
field rather than
inferring the length fromversion
0.18.2
Release notes
Enhancements
- Added new
shutdown
method to async encoders to more easily ensure the end
of output is written and I/O cleaned up. Previously this required a call to
.get_mut().shutdown().await
- Changed
AsyncDynWriter
andAsyncDbnEncoder::with_zstd
to use a zstd checksum like
the sync equivalents - Added new publisher values for
XNAS.BASIC
andXNAS.NLS
Bug fixes
- Fixed bug where DBN metadata would still be upgraded after passing
AsIs
to
DbnDecoder::set_upgrade_policy
andAsyncDbnDecoder::set_upgrade_policy
0.18.1
Release notes
Enhancements
- Added new
stat_type
for UncrossingPrice - Added new publisher values for
XNAS.BASIC
- Added new off-market publisher values for
IFEU.IMPACT
andNDEX.IMPACT
Bug fixes
- Fix descriptions for
FINN
andFINY
publishers.
0.18.0
Release notes
Enhancements
- Added links to example usage in documentation
- Added new predicate methods
InstrumentClass::is_option
,is_future
, andis_spread
to make it easier to work with multiple instrument class variants - Implemented
DecodeRecord
forDbnRecordDecoder
- Added
new_inferred
,with_buffer
,inferred_with_buffer
,from_file
,get_mut
,
andget_ref
methods toAsyncDynReader
for parity with the syncDynReader
- Improved documentation enumerating errors returned by functions
- Added new
DBNError
Python exception that's now the primary exception raised by
databento_dbn
- Improved async performance of decoding DBN files
- Added
StatMsg::ts_in_delta()
method that returns atime::Duration
for consistency
with other records with ats_in_delta
field
Breaking changes
- Changed type of
flags
inMboMsg
,TradeMsg
,Mbp1Msg
,Mbp10Msg
, andCbboMsg
fromu8
to a newFlagSet
type with predicate methods for the various bit flags
as well as setters. Theu8
value can still be obtained by calling theraw()
method.- Improved
Debug
formatting - Python and encodings are unaffected
- Improved
- Removed
write_dbn_file
function deprecated in version 0.14.0 from Python interface.
Please useTranscoder
instead - Switched
DecodeStream
fromstreaming_iterator
crate tofallible_streaming_iterator
to allow better notification of errors - Switched
EncodeDbn::encode_stream
from accepting animpl StreamingIterator
to
accepting anFallibleStreamingIterator
to allow bubbling up of decoding errors - Changed default value for
stype_in
andstype_out
inSymbolMappingMsg
to
u8::MAX
to match C++ client and to reflect an unknown value. This also changes the
value of these fields when upgrading aSymbolMappingMsgV1
to DBNv2 - Renamed
CbboMsg
toCBBOMsg
in Python for consistency with other schemas
Breaking changes
- Changed text serialization of
display_factor
to be affected bypretty_px
.
While it's not a price, it uses the same fixed-price decimal format as other prices - Changed text serialization of
unit_of_measure_qty
inInstrumentDefMsgV1
to be
affected bypretty_px
to match behavior ofInstrumentDefMsgV2
Release notes
Enhancements
- Added links to example usage in documentation
- Added new predicate methods
InstrumentClass::is_option
,is_future
, andis_spread
to make it easier to work with multiple instrument class variants - Implemented
DecodeRecord
forDbnRecordDecoder
- Added
new_inferred
,with_buffer
,inferred_with_buffer
,from_file
,get_mut
,
andget_ref
methods toAsyncDynReader
for parity with the syncDynReader
- Improved documentation enumerating errors returned by functions
- Added new
DBNError
Python exception that's now the primary exception raised by
databento_dbn
- Improved async performance of decoding DBN files
- Added
StatMsg::ts_in_delta()
method that returns atime::Duration
for consistency
with other records with ats_in_delta
field
Breaking changes
- Changed type of
flags
inMboMsg
,TradeMsg
,Mbp1Msg
,Mbp10Msg
, andCbboMsg
fromu8
to a newFlagSet
type with predicate methods for the various bit flags
as well as setters. Theu8
value can still be obtained by calling theraw()
method.- Improved
Debug
formatting - Python and encodings are unaffected
- Improved
- Removed
write_dbn_file
function deprecated in version 0.14.0 from Python interface.
Please useTranscoder
instead - Switched
DecodeStream
fromstreaming_iterator
crate tofallible_streaming_iterator
to allow better notification of errors - Switched
EncodeDbn::encode_stream
from accepting animpl StreamingIterator
to
accepting anFallibleStreamingIterator
to allow bubbling up of decoding errors - Changed default value for
stype_in
andstype_out
inSymbolMappingMsg
to
u8::MAX
to match C++ client and to reflect an unknown value. This also changes the
value of these fields when upgrading aSymbolMappingMsgV1
to DBNv2 - Renamed
CbboMsg
toCBBOMsg
in Python for consistency with other schemas
Breaking changes
- Changed text serialization of
display_factor
to be affected bypretty_px
.
While it's not a price, it uses the same fixed-price decimal format as other prices - Changed text serialization of
unit_of_measure_qty
inInstrumentDefMsgV1
to be
affected bypretty_px
to match behavior ofInstrumentDefMsgV2
0.17.1
Release notes
Bug fixes
- Added missing Python type stub for
StatusMsg
0.17.0
Release notes
Enhancements
- Added new record type
CbboMsg
, new rtypes and schema types forCbbo
,Cbbo1s
,
Cbbo1m
,Tcbbo
,Bbo1s
, andBbo1m
- Added
Volatility
andDelta
StatType
variants - Added
Undefined
andTimeProRata
MatchAlgorithm
variants - Exported more enums to Python:
Action
InstrumentClass
MatchAlgorithm
SecurityUpdateAction
Side
StatType
StatUpdateAction
StatusAction
StatusReason
TradingEvent
TriState
UserDefinedInstrument
Breaking changes
- Removed
Default
trait implementation forMbp1Msg
due to it now having multiple
permissiblertype
values. Users should usedefault_for_schema
instead - Changed the default
match_algorithm
forInstrumentDefMsg
andInstrumentDefMsgV1
fromFifo
toUndefined
- Made
Dataset
,Venue
, andPublisher
non-exhaustive to allow future additions
without breaking changes - Renamed publishers from deprecated datasets to their respective sources (
XNAS.NLS
andXNYS.TRADES
respectively)
Deprecations
- Deprecated dataset values
FINN.NLS
andFINY.TRADES
Bug fixes
- Fixed an issue where the Python
MappingIntervalDict
was not exported - Fixed Python type stubs for
VersionUpgradePolicy
andSType