Skip to content

Releases: databento/dbn

0.23.0

22 Oct 20:40
20379b8
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added new None Action variant that will be gradually rolled out
    to historical and live GLBX.MDP3 data
  • Added consistent escaping of non-printable and non-ASCII values when text encoding
    c_char fields
  • Implemented Default for Action and Side
  • Added support for Python 3.13 to databento_dbn
  • Implemented missing Serialize for (with serde feature enabled) for Venue,
    Dataset, Publisher, Compression, SType, Schema, and Encoding

0.22.1

08 Oct 17:44
832b63f
Compare
Choose a tag to compare

Release notes

Enhancements

  • Removed support for Python 3.8 in databento-dbn due to end of life

Bug fixes

  • Fixed buffer overrun in c_chars_to_str on non-null terminated input

0.22.0

01 Oct 21:59
f90df0a
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added Python type stubs for Record __init__ methods

Breaking changes

  • Combine _reserved3 and _reserved4 fields in CbboMsg
  • Changed setters for char Record fields to accept a single-character strings
  • Changed rtype and length to no longer be settable from Python. Users should
    use the Record type __init__ methods to initialize records

Bug fixes

  • Added missing Python type stub for CMBP_1 variant in Schema

0.21.0

24 Sep 18:43
d1aa0f7
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added --omit-header option to dbn CLI to skip encoding the header row when
    encoding CSVs
  • Added Python setter for ts_event on all records
  • Upgraded pyo3 version to 0.22.3
  • Added new consolidated publishers for XNAS.BASIC and DBEQ.MAX

Breaking changes

  • Changed handling of write_header parameter for CsvEncoder and DynEncoder. It
    now determines whether a header is written automatically in general, not only during
    instantiation of the encoder. This makes it possible to use encode_records and
    encode_decoded without writing a header
  • CsvEncoder::new creates an encoder that will always try to write a header. Use the builder with
    write_header(false) to create an encoder that won't write a header row
  • schema is now always optional for the CsvEncoder builder and no longer returns a Result
  • Changed the layout of CbboMsg to better match BboMsg
  • Renamed Schema::Cbbo to Schema::Cmbp1

Bug fixes

  • Removed debug_assert! on rtype in RecordRef::get_unchecked that was too strict.
    The method is already marked unsafe and it's okay to interpret one record type as another type
    as long as latter type's size is not greater than the former's

0.20.1

27 Aug 16:49
1f40e11
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added DynAsyncBufWriter for buffering compressed or uncompressed async output
  • Added new publisher values for XCIS.BBOTRADES and XNYS.BBOTRADES

Bug fixes

  • Added missing Python type stub for pretty_ts_ref in StatMsg

0.20.0

30 Jul 18:34
d9fad40
Compare
Choose a tag to compare

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 to SType::NasdaqSymbol
  • Renamed SType::Cms variant to SType::CmsSymbol

0.19.2

24 Jul 02:50
9f13282
Compare
Choose a tag to compare

Release notes

Bug fixes

  • Fixed issue where AsyncDynReader would only decode the first frame of multi-frame
    Zstandard files

0.19.1

16 Jul 21:22
12ca6d8
Compare
Choose a tag to compare

Release notes

Bug fixes

  • Update rtype_dispatch and schema_dispatch macros for BboMsg
  • Update RecordEnum and RecordRefEnum for BboMsg

0.19.0

09 Jul 19:48
1fef731
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added BboMsg record struct for future bbo-1m and bbo-1s schemas
  • Upgraded pyo3 version to 0.22.1
  • Upgraded json-writer to 0.4

Breaking changes

  • Added Default trait implementation for Mbp1Msg due to it no longer needing
    to support multiple rtype values. The default_for_schema function has been removed
  • Changed Bbo1sMsg and Bbo1mMsg to be aliases for BboMsg
  • Changed the default value of the side fields to Side::None
  • Reordered parameters and added defaults to Python Metadata initializer to match
    required arguments in Rust

0.18.3

02 Jul 22:03
81abfd7
Compare
Choose a tag to compare

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 from version