Skip to content

Commit 632fa66

Browse files
authored
VER: Release 0.40.0
2 parents a3b3e6d + ebcce70 commit 632fa66

File tree

17 files changed

+1047
-823
lines changed

17 files changed

+1047
-823
lines changed

CHANGELOG.md

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

3+
## 0.40.0 - 2025-08-19
4+
5+
### Enhancements
6+
- Added `instrument_id` and `publisher_id` setters to all records in Python
7+
- Added `DbnVersion` new type
8+
9+
### Breaking changes
10+
- Removed `hd` property from records in Python. Header fields are accessible
11+
directly from the record
12+
- Removed ability to directly instantiate most enums from an `int` in Python and coercion
13+
from `int` in `__eq__`. They can still be instantitated with the `from_int` class method.
14+
Write `Side.from_int(66)` instead of `Side(66)` and `Side.BID == Side.from_int(66)`
15+
instead of `Side.BID == 66`. Affected enums:
16+
- `Side`
17+
- `Action`
18+
- `InstrumentClass`
19+
- `MatchAlgorithm`
20+
- `UserDefinedInstrument`
21+
- `SecurityUpdateAction`
22+
- `SType`
23+
- `Schema`
24+
- `Encoding`
25+
- `Compression`
26+
- `TriState`
27+
- Removed string coercion in `__init__` and `__eq__` for `RType`, `SystemCode`, and
28+
`ErrorCode` enums in Python. It can still be instantiated from a `str` with the
29+
`from_str` class method. Write `RType.from_str("mbo")` instead of `RType("mbo")`
30+
and `RType.TRADES == RType.from_str("trades")` instead of `RType.TRADES == "trades"`
31+
32+
### Bug fixes
33+
- Fixed `__init__` type signatures for `ErrorMsg` and `SystemMsg` in Python
34+
- Added missing types to record `__init__` type signatures in Python
35+
- Added `__init__` type stub for enums in Python
36+
- Fixed `__hash__` implementation for Python enums to match that of their `char` or `int`
37+
representation
38+
39+
### Breaking changes
40+
- Marked `ErrorCode` and `SystemCode` non-exhaustive to allow adding future variants
41+
without a breaking change
42+
- Added `EndOfInterval` variant to `SystemCode` to notify when all OHLCV bars and
43+
subsampled BBO records have been published for a time interval
44+
345
## 0.39.1 - 2025-08-12
446

547
### 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.39.1"
14+
version = "0.40.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.39.1"
3+
version = "0.40.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.39.1"
20+
version = "0.40.0"
2121
authors = [
2222
{ name = "Databento", email = "[email protected]" }
2323
]

0 commit comments

Comments
 (0)