Skip to content

Commit a59815f

Browse files
authored
VER: Release 0.36.1
See release notes.
2 parents b7d168d + 201eb43 commit a59815f

File tree

12 files changed

+84
-9
lines changed

12 files changed

+84
-9
lines changed

CHANGELOG.md

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

3+
## 0.36.1 - 2024-06-18
4+
5+
#### Enhancements
6+
- Added type alias `TBBOMsg` for `MBP1Msg`
7+
- Added support for `BBO-1s`, `BBO-1m`, and `Status` schemas
8+
- Instances of the `Live` client will now call `Live.stop` when garbage collected
9+
- Added new publisher values for `XNAS.BASIC` and `XNAS.NLS`
10+
311
## 0.36.0 - 2024-06-11
412

513
#### Enhancements

databento/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@
4444
from databento.version import __version__ # noqa
4545

4646

47+
# Alias for convenience
48+
TBBOMsg = MBP1Msg
49+
50+
4751
__all__ = [
4852
"API_VERSION",
4953
"DBNStore",

databento/common/constants.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
from databento_dbn import OHLCVMsg
1414
from databento_dbn import Schema
1515
from databento_dbn import StatMsg
16+
from databento_dbn import StatusMsg
1617
from databento_dbn import TradeMsg
1718

1819
from databento.common.types import DBNRecord
@@ -39,6 +40,7 @@
3940
Schema.OHLCV_1D: OHLCVMsg,
4041
Schema.OHLCV_EOD: OHLCVMsg,
4142
Schema.STATISTICS: StatMsg,
43+
Schema.STATUS: StatusMsg,
4244
Schema.TBBO: MBP1Msg,
4345
Schema.TRADES: TradeMsg,
4446
Schema.CBBO: CBBOMsg,
@@ -60,6 +62,13 @@
6062
Schema.OHLCV_1H: OHLCVMsg,
6163
Schema.OHLCV_1D: OHLCVMsg,
6264
Schema.STATISTICS: StatMsg,
65+
Schema.STATUS: StatusMsg,
6366
Schema.TBBO: MBP1Msg,
6467
Schema.TRADES: TradeMsg,
68+
Schema.CBBO: CBBOMsg,
69+
Schema.CBBO_1S: CBBOMsg,
70+
Schema.CBBO_1M: CBBOMsg,
71+
Schema.TCBBO: CBBOMsg,
72+
Schema.BBO_1S: MBP1Msg,
73+
Schema.BBO_1M: MBP1Msg,
6574
}

databento/common/publishers.py

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -914,6 +914,14 @@ class Publisher(StringyMixin, str, Enum):
914914
ICE Futures Europe - Off-Market Trades.
915915
NDEX_IMPACT_XOFF
916916
ICE Endex - Off-Market Trades.
917+
XNAS_NLS_XBOS
918+
Nasdaq NLS - Nasdaq BX.
919+
XNAS_NLS_XPSX
920+
Nasdaq NLS - Nasdaq PSX.
921+
XNAS_BASIC_XBOS
922+
Nasdaq Basic - Nasdaq BX.
923+
XNAS_BASIC_XPSX
924+
Nasdaq Basic - Nasdaq PSX.
917925
918926
"""
919927

@@ -1002,6 +1010,10 @@ class Publisher(StringyMixin, str, Enum):
10021010
XNAS_BASIC_FINC = "XNAS.BASIC.FINC"
10031011
IFEU_IMPACT_XOFF = "IFEU.IMPACT.XOFF"
10041012
NDEX_IMPACT_XOFF = "NDEX.IMPACT.XOFF"
1013+
XNAS_NLS_XBOS = "XNAS.NLS.XBOS"
1014+
XNAS_NLS_XPSX = "XNAS.NLS.XPSX"
1015+
XNAS_BASIC_XBOS = "XNAS.BASIC.XBOS"
1016+
XNAS_BASIC_XPSX = "XNAS.BASIC.XPSX"
10051017

10061018
@classmethod
10071019
def from_int(cls, value: int) -> Publisher:
@@ -1178,6 +1190,14 @@ def from_int(cls, value: int) -> Publisher:
11781190
return Publisher.IFEU_IMPACT_XOFF
11791191
if value == 85:
11801192
return Publisher.NDEX_IMPACT_XOFF
1193+
if value == 86:
1194+
return Publisher.XNAS_NLS_XBOS
1195+
if value == 87:
1196+
return Publisher.XNAS_NLS_XPSX
1197+
if value == 88:
1198+
return Publisher.XNAS_BASIC_XBOS
1199+
if value == 89:
1200+
return Publisher.XNAS_BASIC_XPSX
11811201
raise ValueError(f"Integer value {value} does not correspond with any Publisher variant")
11821202

11831203
def to_int(self) -> int:
@@ -1354,6 +1374,14 @@ def to_int(self) -> int:
13541374
return 84
13551375
if self == Publisher.NDEX_IMPACT_XOFF:
13561376
return 85
1377+
if self == Publisher.XNAS_NLS_XBOS:
1378+
return 86
1379+
if self == Publisher.XNAS_NLS_XPSX:
1380+
return 87
1381+
if self == Publisher.XNAS_BASIC_XBOS:
1382+
return 88
1383+
if self == Publisher.XNAS_BASIC_XPSX:
1384+
return 89
13571385
raise ValueError("Invalid Publisher")
13581386

13591387
@property
@@ -1531,6 +1559,14 @@ def venue(self) -> Venue:
15311559
return Venue.XOFF
15321560
if self == Publisher.NDEX_IMPACT_XOFF:
15331561
return Venue.XOFF
1562+
if self == Publisher.XNAS_NLS_XBOS:
1563+
return Venue.XBOS
1564+
if self == Publisher.XNAS_NLS_XPSX:
1565+
return Venue.XPSX
1566+
if self == Publisher.XNAS_BASIC_XBOS:
1567+
return Venue.XBOS
1568+
if self == Publisher.XNAS_BASIC_XPSX:
1569+
return Venue.XPSX
15341570
raise ValueError("Unexpected Publisher value")
15351571

15361572
@property
@@ -1708,6 +1744,14 @@ def dataset(self) -> Dataset:
17081744
return Dataset.IFEU_IMPACT
17091745
if self == Publisher.NDEX_IMPACT_XOFF:
17101746
return Dataset.NDEX_IMPACT
1747+
if self == Publisher.XNAS_NLS_XBOS:
1748+
return Dataset.XNAS_NLS
1749+
if self == Publisher.XNAS_NLS_XPSX:
1750+
return Dataset.XNAS_NLS
1751+
if self == Publisher.XNAS_BASIC_XBOS:
1752+
return Dataset.XNAS_BASIC
1753+
if self == Publisher.XNAS_BASIC_XPSX:
1754+
return Dataset.XNAS_BASIC
17111755
raise ValueError("Unexpected Publisher value")
17121756

17131757
@property
@@ -1885,4 +1929,12 @@ def description(self) -> str:
18851929
return "ICE Futures Europe - Off-Market Trades"
18861930
if self == Publisher.NDEX_IMPACT_XOFF:
18871931
return "ICE Endex - Off-Market Trades"
1932+
if self == Publisher.XNAS_NLS_XBOS:
1933+
return "Nasdaq NLS - Nasdaq BX"
1934+
if self == Publisher.XNAS_NLS_XPSX:
1935+
return "Nasdaq NLS - Nasdaq PSX"
1936+
if self == Publisher.XNAS_BASIC_XBOS:
1937+
return "Nasdaq Basic - Nasdaq BX"
1938+
if self == Publisher.XNAS_BASIC_XPSX:
1939+
return "Nasdaq Basic - Nasdaq PSX"
18881940
raise ValueError("Unexpected Publisher value")

databento/live/client.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,12 @@ def factory() -> _SessionProtocol:
121121
if not Live._thread.is_alive():
122122
Live._thread.start()
123123

124+
def __del__(self) -> None:
125+
try:
126+
self.stop()
127+
except (AttributeError, ValueError):
128+
pass
129+
124130
def __aiter__(self) -> LiveIterator:
125131
return iter(self)
126132

databento/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "0.36.0"
1+
__version__ = "0.36.1"

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "databento"
3-
version = "0.36.0"
3+
version = "0.36.1"
44
description = "Official Python client library for Databento"
55
authors = [
66
"Databento <support@databento.com>",
267 Bytes
Binary file not shown.
268 Bytes
Binary file not shown.
188 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)