Releases: databento/dbn
Releases · databento/dbn
0.48.0
Release notes
Enhancements
- Added initial support for splitting DBN files:
- Added new
SplitEncoderthat supports synchronous and asynchronous encoding - Added new
Splittertrait that allows for extensible splitting of files while
reusing theSplitEncoderboilerplate. - Added
SchemaSplitter,SymbolSplitter, andTimeSplitterwhich allow for
different methods of splitting DBN files - Added split support to the CLI. For example:
dbn mbo.dbn --split-by week --output-pattern '{date}.json'--json
- Added new
- Added new publisher for Blue Ocean ATS (
OCEA_MEMOIR_OCEA)
Bug fixes
- Fixed issue where
AsyncDynReaderinstances created fromwith_buffer()would only
decode the first frame of multi-frame Zstandard files
0.47.0
Release notes
Enhancements
- Changed the
__repr__implementation of all records in Python to be more Pythonic - Added new off-market publisher for Cboe Futures Exchange (
XCBF_PITCH_XOFF) - Added new
StatTypevariants to be used byXCBF.PITCHdataset:UpperPriceLimitLowerPriceLimitBlockVolumeVenueSpecificVolume1
- Upgraded
pyo3version to 0.27.2 - Upgraded
timeversion to 0.3.45
0.46.0
Release notes
Breaking changes
- Added
DBNRecordunion type to Python which includes all record types - Removed
Recordclass from Python type stubs to match code: the record classes don't
share a base class. UseDBNRecordinstead. - Removed
_DBNRecordunion type alias which only existed in typestub and wasn't
importable. UseDBNRecord | Metadatainstead
0.45.0
Release notes
Enhancements
- Added new venue, dataset, and publisher for Cboe Futures Exchange (
XCBF.PITCH) - Added support for Python 3.14 to
databento_dbn
0.44.0
Release notes
Enhancements
- Added logic to set
codewhen upgrading version 1SystemMsgto newer versions - Added
MergeRecordDecoder::with_hintsthat allows hinting the minimum timestamp from
each decoder - Added
Dataset::publishers()method to retrieve allPublishervalues for a dataset
Breaking changes
- Updated the minimum supported
tokioversion to 1.41, which was released one year ago
Bug fixes
- Fixed bug in
DbnFsm::consume, though it should have no impact
0.43.0
Release notes
Enhancements
- Added export of
F_PUBLISHER_SPECIFICconstant to Python - Removed support for Python 3.9 in
databento-dbndue to end of life - Added explicit
Unsetvariant forSystemCodeandErrorCode - Changed Python getters for enum fields to return the underlying type when no known
variant can be found. As a result, these getters no longer raise an exception - Added
Defaultimplementation forSystemCodeandErrorCode
Bug fixes
- Added missing Python type stubs for other flag constants
0.42.0
Release notes
Enhancements
- Added
ts_indexandpretty_ts_indexproperties for records in Python which provides
the timestamp that is most appropriate for indexing - Upgraded
pyo3version to 0.26.0
Bug fixes
- Fixed type stub for
channel_idin Python to allowNone - Fixed missing re-export for
record::TcbboMsg
0.41.0
Release notes
Enhancements
- Added
intervalmethodRTypeandSchemato get the duration for subsample schemas
likeOhlcv1HandCbbo1S
Breaking changes
- Changed the default value for
channel_idto beu8::MAXinMboMsgandu16::MAX
elsewhere since 0 is a valid channel ID
Bug fixes
- Changed default
inst_attrib_valuevalue from 0 toi32::MAXto match Rust
0.40.0
Release notes
Enhancements
- Added
instrument_idandpublisher_idsetters to all records in Python - Added
DbnVersionnew type
Breaking changes
- Removed
hdproperty from records in Python. Header fields are accessible
directly from the record - Removed ability to directly instantiate most enums from an
intin Python and coercion
fromintin__eq__. They can still be instantitated with thefrom_intclass method.
WriteSide.from_int(66)instead ofSide(66)andSide.BID == Side.from_int(66)
instead ofSide.BID == 66. Affected enums:SideActionInstrumentClassMatchAlgorithmUserDefinedInstrumentSecurityUpdateActionSTypeSchemaEncodingCompressionTriState
- Removed string coercion in
__init__and__eq__forRType,SystemCode, and
ErrorCodeenums in Python. It can still be instantiated from astrwith the
from_strclass method. WriteRType.from_str("mbo")instead ofRType("mbo")
andRType.TRADES == RType.from_str("trades")instead ofRType.TRADES == "trades"
Bug fixes
- Fixed
__init__type signatures forErrorMsgandSystemMsgin Python - Added missing types to record
__init__type signatures in Python - Added
__init__type stub for enums in Python - Fixed
__hash__implementation for Python enums to match that of theircharorint
representation
Breaking changes
- Marked
ErrorCodeandSystemCodenon-exhaustive to allow adding future variants
without a breaking change - Added
EndOfIntervalvariant toSystemCodeto notify when all OHLCV bars and
subsampled BBO records have been published for a time interval
0.39.1
Release notes
Enhancements
- Added
PUBLISHER_SPECIFICflag - Improved JSON encoding performance
- Added a
Defaultimplementation forSecurityUpdateAction