Releases: databento/dbn
Releases · databento/dbn
0.19.2
Release notes
Bug fixes
- Fixed issue where
AsyncDynReaderwould only decode the first frame of multi-frame
Zstandard files
0.19.1
Release notes
Bug fixes
- Update
rtype_dispatchandschema_dispatchmacros forBboMsg - Update
RecordEnumandRecordRefEnumforBboMsg
0.19.0
Release notes
Enhancements
- Added
BboMsgrecord struct for futurebbo-1mandbbo-1sschemas - Upgraded
pyo3version to 0.22.1 - Upgraded
json-writerto 0.4
Breaking changes
- Added
Defaulttrait implementation forMbp1Msgdue to it no longer needing
to support multiplertypevalues. Thedefault_for_schemafunction has been removed - Changed
Bbo1sMsgandBbo1mMsgto be aliases forBboMsg - Changed the default value of the
sidefields toSide::None - Reordered parameters and added defaults to Python
Metadatainitializer 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_lenfield rather than
inferring the length fromversion
0.18.2
Release notes
Enhancements
- Added new
shutdownmethod 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
AsyncDynWriterandAsyncDbnEncoder::with_zstdto use a zstd checksum like
the sync equivalents - Added new publisher values for
XNAS.BASICandXNAS.NLS
Bug fixes
- Fixed bug where DBN metadata would still be upgraded after passing
AsIsto
DbnDecoder::set_upgrade_policyandAsyncDbnDecoder::set_upgrade_policy
0.18.1
Release notes
Enhancements
- Added new
stat_typefor UncrossingPrice - Added new publisher values for
XNAS.BASIC - Added new off-market publisher values for
IFEU.IMPACTandNDEX.IMPACT
Bug fixes
- Fix descriptions for
FINNandFINYpublishers.
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
DecodeRecordforDbnRecordDecoder - Added
new_inferred,with_buffer,inferred_with_buffer,from_file,get_mut,
andget_refmethods toAsyncDynReaderfor parity with the syncDynReader - Improved documentation enumerating errors returned by functions
- Added new
DBNErrorPython 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::Durationfor consistency
with other records with ats_in_deltafield
Breaking changes
- Changed type of
flagsinMboMsg,TradeMsg,Mbp1Msg,Mbp10Msg, andCbboMsg
fromu8to a newFlagSettype with predicate methods for the various bit flags
as well as setters. Theu8value can still be obtained by calling theraw()method.- Improved
Debugformatting - Python and encodings are unaffected
- Improved
- Removed
write_dbn_filefunction deprecated in version 0.14.0 from Python interface.
Please useTranscoderinstead - Switched
DecodeStreamfromstreaming_iteratorcrate tofallible_streaming_iterator
to allow better notification of errors - Switched
EncodeDbn::encode_streamfrom accepting animpl StreamingIteratorto
accepting anFallibleStreamingIteratorto allow bubbling up of decoding errors - Changed default value for
stype_inandstype_outinSymbolMappingMsgto
u8::MAXto match C++ client and to reflect an unknown value. This also changes the
value of these fields when upgrading aSymbolMappingMsgV1to DBNv2 - Renamed
CbboMsgtoCBBOMsgin Python for consistency with other schemas
Breaking changes
- Changed text serialization of
display_factorto 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_qtyinInstrumentDefMsgV1to be
affected bypretty_pxto 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
DecodeRecordforDbnRecordDecoder - Added
new_inferred,with_buffer,inferred_with_buffer,from_file,get_mut,
andget_refmethods toAsyncDynReaderfor parity with the syncDynReader - Improved documentation enumerating errors returned by functions
- Added new
DBNErrorPython 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::Durationfor consistency
with other records with ats_in_deltafield
Breaking changes
- Changed type of
flagsinMboMsg,TradeMsg,Mbp1Msg,Mbp10Msg, andCbboMsg
fromu8to a newFlagSettype with predicate methods for the various bit flags
as well as setters. Theu8value can still be obtained by calling theraw()method.- Improved
Debugformatting - Python and encodings are unaffected
- Improved
- Removed
write_dbn_filefunction deprecated in version 0.14.0 from Python interface.
Please useTranscoderinstead - Switched
DecodeStreamfromstreaming_iteratorcrate tofallible_streaming_iterator
to allow better notification of errors - Switched
EncodeDbn::encode_streamfrom accepting animpl StreamingIteratorto
accepting anFallibleStreamingIteratorto allow bubbling up of decoding errors - Changed default value for
stype_inandstype_outinSymbolMappingMsgto
u8::MAXto match C++ client and to reflect an unknown value. This also changes the
value of these fields when upgrading aSymbolMappingMsgV1to DBNv2 - Renamed
CbboMsgtoCBBOMsgin Python for consistency with other schemas
Breaking changes
- Changed text serialization of
display_factorto 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_qtyinInstrumentDefMsgV1to be
affected bypretty_pxto 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
VolatilityandDeltaStatTypevariants - Added
UndefinedandTimeProRataMatchAlgorithmvariants - Exported more enums to Python:
ActionInstrumentClassMatchAlgorithmSecurityUpdateActionSideStatTypeStatUpdateActionStatusActionStatusReasonTradingEventTriStateUserDefinedInstrument
Breaking changes
- Removed
Defaulttrait implementation forMbp1Msgdue to it now having multiple
permissiblertypevalues. Users should usedefault_for_schemainstead - Changed the default
match_algorithmforInstrumentDefMsgandInstrumentDefMsgV1
fromFifotoUndefined - Made
Dataset,Venue, andPublishernon-exhaustive to allow future additions
without breaking changes - Renamed publishers from deprecated datasets to their respective sources (
XNAS.NLS
andXNYS.TRADESrespectively)
Deprecations
- Deprecated dataset values
FINN.NLSandFINY.TRADES
Bug fixes
- Fixed an issue where the Python
MappingIntervalDictwas not exported - Fixed Python type stubs for
VersionUpgradePolicyandSType
0.16.0
Release notes
Enhancements
- Updated
StatusMsgand made it public in preparation for releasing a status schema - Added
StatusAction,StatusReason,TradingEvent, andTriStateenums for use in
the status schema - Added
-tand--tsvflags to DBN CLI to encode tab-separated values (TSV) - Added
delimitermethod to builders forDynEncoderandCsvEncoderto customize the
field delimiter character, allowing DBN to be encoded as tab-separated values (TSV) - Document cancellation safety for
AsyncRecordDecoder::decode_ref(credit: @yongqli) - Added new publisher values for consolidated DBEQ.MAX
- Added C FFI conversion functions from
ErrorMsgV1toErrorMsgandSystemMsgV1
toSystemMsg - Improved documentation for
sidefield andSideenum - Upgraded
async-compressionto 0.4.6 - Upgraded
strumto 0.26
Breaking changes
- Changed default for
VersionUpgradePolicytoUpgrade - Changed default
upgrade_policyforDbnDecoder,AsyncDbnDecoder, and Python
DBNDecodertoUpgradeso by default the primary record types can always be used - Changed fields of previously-hidden
StatusMsgrecord type - Updated text serialization order of status schema to match other schemas
- Changed text serialization
unit_of_measure_qtyto be affected bypretty_px. While
it's not a price, it uses the same fixed-price decimal format as other prices - Made
StatTypeandVersionUpgradePolicynon-exhaustive to allow future additions
without breaking changes - Renamed
_dummyfield inImbalanceMsgandStatMsgto_reserved - Added
ts_outparameter toRecordDecoderandAsyncRecordDecoder
with_upgrade_policymethods
Bug fixes
- Fixed handling of
ts_outwhen upgrading DBNv1 records to version 2 - Added missing
StatType::Vwapvariant used in the ICE datasets - Fixed an issue with Python stub file distribution
- Fixed missing handling of
ErrorMsgV1andSystemMsgV1inrtypedispatch macros