Skip to content

Commit 3794bd6

Browse files
authored
VER: Release 0.36.0
2 parents 2c18f38 + 6c9291c commit 3794bd6

File tree

19 files changed

+1446
-854
lines changed

19 files changed

+1446
-854
lines changed

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,23 @@
11
# Changelog
22

3+
## 0.36.0 - 2025-06-10
4+
5+
### Enhancements
6+
- Added support for width, fill, and padding when formatting `pretty::Ts`
7+
- Added support for sign, precision, width, fill, and padding when formatting
8+
`pretty::Px`
9+
- Optimized pretty formatting of prices and timestamps
10+
11+
### Breaking changes
12+
- Moved core async decoding and encoding functionality to new traits to
13+
match the sync interface and present a standardized interface
14+
- Decoding: `AsyncDecodeRecordRef` and `AsyncDecodeRecord`
15+
- Encoding: `AsyncEncodeRecord`, `AsyncEncodeRecordRef`, and
16+
`AsyncEncodeRecordTextExt`
17+
18+
### Bug fixes
19+
- Added missing Python type stubs for several leg properties of `InstrumentDefMsg`
20+
321
## 0.35.1 - 2025-06-03
422

523
### Enhancements

Cargo.lock

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ resolver = "2"
1111
[workspace.package]
1212
authors = ["Databento <[email protected]>"]
1313
edition = "2021"
14-
version = "0.35.1"
14+
version = "0.36.0"
1515
documentation = "https://databento.com/docs"
1616
repository = "https://github.com/databento/dbn"
1717
license = "Apache-2.0"

python/pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "databento-dbn"
3-
version = "0.35.1"
3+
version = "0.36.0"
44
description = "Python bindings for encoding and decoding Databento Binary Encoding (DBN)"
55
authors = ["Databento <[email protected]>"]
66
license = "Apache-2.0"
@@ -17,7 +17,7 @@ build-backend = "maturin"
1717

1818
[project]
1919
name = "databento-dbn"
20-
version = "0.35.1"
20+
version = "0.36.0"
2121
authors = [
2222
{ name = "Databento", email = "[email protected]" }
2323
]

python/python/databento_dbn/_lib.pyi

Lines changed: 164 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1130,7 +1130,7 @@ class RecordHeader:
11301130
"""
11311131
The publisher ID assigned by Databento, which denotes the dataset and venue.
11321132
1133-
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#prices.
1133+
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#publishers-datasets-and-venues.
11341134
11351135
Returns
11361136
-------
@@ -1222,7 +1222,7 @@ class Record(SupportsBytes):
12221222
"""
12231223
The publisher ID assigned by Databento, which denotes the dataset and venue.
12241224
1225-
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#prices.
1225+
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#publishers-datasets-and-venues.
12261226
12271227
Returns
12281228
-------
@@ -1699,7 +1699,7 @@ class ConsolidatedBidAskPair:
16991699
"""
17001700
The publisher ID indicating the venue containing the best bid.
17011701
1702-
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#prices.
1702+
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#publishers-datasets-and-venues.
17031703
17041704
Returns
17051705
-------
@@ -1723,7 +1723,7 @@ class ConsolidatedBidAskPair:
17231723
"""
17241724
The publisher ID indicating the venue containing the best ask.
17251725
1726-
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#prices.
1726+
See `Publishers` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#publishers-datasets-and-venues.
17271727
17281728
Returns
17291729
-------
@@ -3495,6 +3495,36 @@ class InstrumentDefMsg(Record):
34953495
34963496
"""
34973497

3498+
@property
3499+
def leg_count(self) -> int:
3500+
"""
3501+
The number of legs in the strategy or spread. Will be 0 for outrights.
3502+
3503+
Returns
3504+
-------
3505+
int
3506+
3507+
See Also
3508+
--------
3509+
leg_index
3510+
3511+
"""
3512+
3513+
@property
3514+
def leg_index(self) -> int:
3515+
"""
3516+
The 0-based index of the leg.
3517+
3518+
Returns
3519+
-------
3520+
int
3521+
3522+
See Also
3523+
--------
3524+
leg_count
3525+
3526+
"""
3527+
34983528
@property
34993529
def pretty_leg_price(self) -> float:
35003530
"""
@@ -3561,6 +3591,136 @@ class InstrumentDefMsg(Record):
35613591
35623592
"""
35633593

3594+
@property
3595+
def leg_instrument_id(self) -> int:
3596+
"""
3597+
The numeric ID assigned to the leg instrument.
3598+
See [Instrument identifiers] https://databento.com/docs/standards-and-conventions/common-fields-enums-types#instrument-identifiers.
3599+
3600+
Returns
3601+
-------
3602+
int
3603+
3604+
See Also
3605+
--------
3606+
leg_raw_symbol
3607+
3608+
"""
3609+
3610+
@property
3611+
def leg_ratio_price_numerator(self) -> int:
3612+
"""
3613+
The numerator of the price ratio of the leg within the spread.
3614+
3615+
Returns
3616+
-------
3617+
int
3618+
3619+
See Also
3620+
--------
3621+
leg_ratio_price_denominator
3622+
3623+
"""
3624+
3625+
@property
3626+
def leg_ratio_price_denominator(self) -> int:
3627+
"""
3628+
The denominator of the price ratio of the leg within the spread.
3629+
3630+
Returns
3631+
-------
3632+
int
3633+
3634+
See Also
3635+
--------
3636+
leg_ratio_price_numerator
3637+
3638+
"""
3639+
3640+
@property
3641+
def leg_ratio_qty_numerator(self) -> int:
3642+
"""
3643+
The numerator of the quantity ratio of the leg within the spread.
3644+
3645+
Returns
3646+
-------
3647+
int
3648+
3649+
See Also
3650+
--------
3651+
leg_ratio_qty_denominator
3652+
3653+
"""
3654+
3655+
@property
3656+
def leg_ratio_qty_denominator(self) -> int:
3657+
"""
3658+
The denominator of the quantity ratio of the leg within the spread.
3659+
3660+
Returns
3661+
-------
3662+
int
3663+
3664+
See Also
3665+
--------
3666+
leg_ratio_qty_numerator
3667+
3668+
"""
3669+
3670+
@property
3671+
def leg_underlying_id(self) -> int:
3672+
"""
3673+
The numeric ID of the leg instrument's underlying instrument.
3674+
See [Instrument identifiers] https://databento.com/docs/standards-and-conventions/common-fields-enums-types#instrument-identifiers.
3675+
3676+
Returns
3677+
-------
3678+
int
3679+
3680+
See Also
3681+
--------
3682+
instrument_id
3683+
3684+
"""
3685+
3686+
@property
3687+
def leg_raw_symbol(self) -> str:
3688+
"""
3689+
The leg instrument's raw symbol assigned by the publisher.
3690+
3691+
Returns
3692+
-------
3693+
str
3694+
3695+
See Also
3696+
--------
3697+
leg_instrument_id
3698+
3699+
"""
3700+
3701+
@property
3702+
def leg_instrument_class(self) -> str | None:
3703+
"""
3704+
The matching algorithm used for the instrument, typically **F**IFO.
3705+
See `Matching algorithm` https://databento.com/docs/schemas-and-data-formats/instrument-definitions#matching-algorithm.
3706+
3707+
Returns
3708+
-------
3709+
str | None
3710+
3711+
"""
3712+
3713+
@property
3714+
def leg_side(self) -> str | None:
3715+
"""
3716+
The side taken for the leg when purchasing the spread.
3717+
3718+
Returns
3719+
-------
3720+
str | None
3721+
3722+
"""
3723+
35643724
class InstrumentDefMsgV2(Record):
35653725
"""
35663726
Definition of an instrument in DBN version 2.

rust/dbn-cli/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ name = "dbn"
1616
path = "src/main.rs"
1717

1818
[dependencies]
19-
dbn = { path = "../dbn", version = "=0.35.1", default-features = false }
19+
dbn = { path = "../dbn", version = "=0.36.0", default-features = false }
2020

2121
anyhow = { workspace = true }
2222
clap = { version = "4.5", features = ["derive", "wrap_help"] }

rust/dbn/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ serde = ["dep:serde", "time/parsing", "time/serde"]
2525
trivial_copy = []
2626

2727
[dependencies]
28-
dbn-macros = { version = "=0.35.1", path = "../dbn-macros" }
28+
dbn-macros = { version = "=0.36.0", path = "../dbn-macros" }
2929

3030
async-compression = { version = "0.4.23", features = ["tokio", "zstd"], optional = true }
3131
csv = { workspace = true }

0 commit comments

Comments
 (0)