databento-dbn 0.41.0__cp313-cp313-macosx_10_12_x86_64.whl → 0.43.0__cp313-cp313-macosx_10_12_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of databento-dbn might be problematic. Click here for more details.

Binary file
databento_dbn/_lib.pyi CHANGED
@@ -20,6 +20,13 @@ UNDEF_PRICE: int
20
20
  UNDEF_ORDER_SIZE: int
21
21
  UNDEF_STAT_QUANTITY: int
22
22
  UNDEF_TIMESTAMP: int
23
+ F_LAST: int
24
+ F_TOB: int
25
+ F_SNAPSHOT: int
26
+ F_MBP: int
27
+ F_BAD_TS_RECV: int
28
+ F_MAYBE_BAD_BOOK: int
29
+ F_PUBLISHER_SPECIFIC: int
23
30
 
24
31
  _DBNRecord = Union[
25
32
  Metadata,
@@ -326,6 +333,44 @@ class Record(SupportsBytes):
326
333
 
327
334
  """
328
335
 
336
+ @property
337
+ def ts_index(self) -> int:
338
+ """
339
+ The raw primary timestamp for the record as the number of nanoseconds since the
340
+ UNIX epoch. For records that define a `ts_recv` and `ts_event`, this method will
341
+ return the appropriate timestamp for indexing based on the record's type.
342
+
343
+ This timestamp should be used for sorting records as well as indexing into any
344
+ symbology data structure.
345
+
346
+ See `ts_event` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#ts-event.
347
+ See `ts_recv` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#ts-recv.
348
+
349
+ Returns
350
+ -------
351
+ int
352
+
353
+ """
354
+
355
+ @property
356
+ def pretty_ts_index(self) -> dt.datetime | None:
357
+ """
358
+ The primary timestamp for the record as the expressed as a datetime or a
359
+ `pandas.Timestamp`, if available. For records that define a `ts_recv` and `ts_event`,
360
+ this method will return the appropriate timestamp for indexing based on the record's type.
361
+
362
+ This timestamp should be used for sorting records as well as indexing into any
363
+ symbology data structure.
364
+
365
+ See `ts_event` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#ts-event.
366
+ See `ts_recv` https://databento.com/docs/standards-and-conventions/common-fields-enums-types#ts-recv.
367
+
368
+ Returns
369
+ -------
370
+ datetime.datetime
371
+
372
+ """
373
+
329
374
  @property
330
375
  def pretty_ts_event(self) -> dt.datetime | None:
331
376
  """
@@ -1255,6 +1300,8 @@ class ErrorCode(Enum):
1255
1300
  There was an issue with a subscription request (other than symbol resolution).
1256
1301
  INTERNAL_ERROR
1257
1302
  An error occurred in the gateway.
1303
+ UNSET
1304
+ No error code was specified or this record was upgraded from a version 1 struct where the code field didn't exist.
1258
1305
 
1259
1306
  """
1260
1307
 
@@ -1264,6 +1311,7 @@ class ErrorCode(Enum):
1264
1311
  SYMBOL_RESOLUTION_FAILED: int
1265
1312
  INVALID_SUBSCRIPTION: int
1266
1313
  INTERNAL_ERROR: int
1314
+ UNSET: int
1267
1315
 
1268
1316
  def __init__(self, value: int) -> None: ...
1269
1317
  @classmethod
@@ -1289,6 +1337,9 @@ class SystemCode(Enum):
1289
1337
  Indicates a replay subscription has caught up with real-time data.
1290
1338
  END_OF_INTERVAL
1291
1339
  Signals that all records for interval-based schemas have been published for the given timestamp.
1340
+ UNSET
1341
+ No system code was specified or this record was upgraded from a version 1 struct where
1342
+ the code field didn't exist.
1292
1343
 
1293
1344
  """
1294
1345
 
@@ -1297,6 +1348,7 @@ class SystemCode(Enum):
1297
1348
  SLOW_READER_WARNING: int
1298
1349
  REPLAY_COMPLETED: int
1299
1350
  END_OF_INTERVAL: int
1351
+ UNSET: int
1300
1352
 
1301
1353
  def __init__(self, value: int) -> None: ...
1302
1354
  @classmethod
@@ -1324,7 +1376,7 @@ class MBOMsg(Record):
1324
1376
  side: Side,
1325
1377
  ts_recv: int,
1326
1378
  flags: int | None = None,
1327
- channel_id: int = 0,
1379
+ channel_id: int | None = None,
1328
1380
  ts_in_delta: int = 0,
1329
1381
  sequence: int = 0,
1330
1382
  ) -> None: ...
@@ -1406,7 +1458,7 @@ class MBOMsg(Record):
1406
1458
  """
1407
1459
 
1408
1460
  @property
1409
- def action(self) -> Action:
1461
+ def action(self) -> Action | str:
1410
1462
  """
1411
1463
  The event action. Can be **A**dd, **C**ancel, **M**odify, clea**R** book, **T**rade, **F**ill, or **N**one.
1412
1464
 
@@ -1414,12 +1466,12 @@ class MBOMsg(Record):
1414
1466
 
1415
1467
  Returns
1416
1468
  -------
1417
- Action
1469
+ Action | str
1418
1470
 
1419
1471
  """
1420
1472
 
1421
1473
  @property
1422
- def side(self) -> Side:
1474
+ def side(self) -> Side | str:
1423
1475
  """
1424
1476
  The side that initiates the event. Can be **A**sk for a sell order (or sell aggressor in
1425
1477
  a trade), **B**id for a buy order (or buy aggressor in a trade), or **N**one where no side is specified.
@@ -1428,7 +1480,7 @@ class MBOMsg(Record):
1428
1480
 
1429
1481
  Returns
1430
1482
  -------
1431
- Side
1483
+ Side | str
1432
1484
 
1433
1485
  """
1434
1486
 
@@ -1802,7 +1854,7 @@ class TradeMsg(Record):
1802
1854
  """
1803
1855
 
1804
1856
  @property
1805
- def action(self) -> Action:
1857
+ def action(self) -> Action | str:
1806
1858
  """
1807
1859
  The event action. Always **T**rade in the trades schema.
1808
1860
 
@@ -1810,12 +1862,12 @@ class TradeMsg(Record):
1810
1862
 
1811
1863
  Returns
1812
1864
  -------
1813
- Action
1865
+ Action | str
1814
1866
 
1815
1867
  """
1816
1868
 
1817
1869
  @property
1818
- def side(self) -> Side:
1870
+ def side(self) -> Side | str:
1819
1871
  """
1820
1872
  The side that initiates the trade. Can be **A**sk for a sell aggressor in a trade, **B**id for a buy aggressor in a trade, or **N**one where no side is specified.
1821
1873
 
@@ -1823,7 +1875,7 @@ class TradeMsg(Record):
1823
1875
 
1824
1876
  Returns
1825
1877
  -------
1826
- Side
1878
+ Side | str
1827
1879
 
1828
1880
  """
1829
1881
 
@@ -1968,7 +2020,7 @@ class MBP1Msg(Record):
1968
2020
  """
1969
2021
 
1970
2022
  @property
1971
- def action(self) -> Action:
2023
+ def action(self) -> Action | str:
1972
2024
  """
1973
2025
  The event action. Can be **A**dd, **C**ancel, **M**odify, clea**R** book, or **T**rade.
1974
2026
 
@@ -1976,12 +2028,12 @@ class MBP1Msg(Record):
1976
2028
 
1977
2029
  Returns
1978
2030
  -------
1979
- Action
2031
+ Action | str
1980
2032
 
1981
2033
  """
1982
2034
 
1983
2035
  @property
1984
- def side(self) -> Side:
2036
+ def side(self) -> Side | str:
1985
2037
  """
1986
2038
  The side that initiates the event. Can be **A**sk for a sell order (or sell aggressor in
1987
2039
  a trade), **B**id for a buy order (or buy aggressor in a trade), or **N**one where no side is specified.
@@ -1990,7 +2042,7 @@ class MBP1Msg(Record):
1990
2042
 
1991
2043
  Returns
1992
2044
  -------
1993
- Side
2045
+ Side | str
1994
2046
 
1995
2047
  """
1996
2048
 
@@ -2150,7 +2202,7 @@ class MBP10Msg(Record):
2150
2202
  """
2151
2203
 
2152
2204
  @property
2153
- def action(self) -> Action:
2205
+ def action(self) -> Action | str:
2154
2206
  """
2155
2207
  The event action. Can be **A**dd, **C**ancel, **M**odify, clea**R** book, or **T**rade.
2156
2208
 
@@ -2158,12 +2210,12 @@ class MBP10Msg(Record):
2158
2210
 
2159
2211
  Returns
2160
2212
  -------
2161
- Action
2213
+ Action | str
2162
2214
 
2163
2215
  """
2164
2216
 
2165
2217
  @property
2166
- def side(self) -> Side:
2218
+ def side(self) -> Side | str:
2167
2219
  """
2168
2220
  The side that initiates the event. Can be **A**sk for a sell order (or sell aggressor in
2169
2221
  a trade), **B**id for a buy order (or buy aggressor in a trade), or **N**one where no side is specified.
@@ -2172,7 +2224,7 @@ class MBP10Msg(Record):
2172
2224
 
2173
2225
  Returns
2174
2226
  -------
2175
- Side
2227
+ Side | str
2176
2228
 
2177
2229
  """
2178
2230
 
@@ -2330,7 +2382,7 @@ class BBOMsg(Record):
2330
2382
  """
2331
2383
 
2332
2384
  @property
2333
- def side(self) -> Side:
2385
+ def side(self) -> Side | str:
2334
2386
  """
2335
2387
  The side that initiated the last trade. Can be **A**sk for a sell order (or sell
2336
2388
  aggressor in a trade), **B**id for a buy order (or buy aggressor in a trade), or
@@ -2340,7 +2392,7 @@ class BBOMsg(Record):
2340
2392
 
2341
2393
  Returns
2342
2394
  -------
2343
- Side
2395
+ Side | str
2344
2396
 
2345
2397
  """
2346
2398
 
@@ -2474,7 +2526,7 @@ class CMBP1Msg(Record):
2474
2526
  """
2475
2527
 
2476
2528
  @property
2477
- def action(self) -> Action:
2529
+ def action(self) -> Action | str:
2478
2530
  """
2479
2531
  The event action. Can be **A**dd, **C**ancel, **M**odify, clea**R** book, or **T**rade.
2480
2532
 
@@ -2482,12 +2534,12 @@ class CMBP1Msg(Record):
2482
2534
 
2483
2535
  Returns
2484
2536
  -------
2485
- Action
2537
+ Action | str
2486
2538
 
2487
2539
  """
2488
2540
 
2489
2541
  @property
2490
- def side(self) -> Side:
2542
+ def side(self) -> Side | str:
2491
2543
  """
2492
2544
  The side that initiates the event. Can be **A**sk for a sell order (or sell aggressor in
2493
2545
  a trade), **B**id for a buy order (or buy aggressor in a trade), or **N**one where no side is specified.
@@ -2496,7 +2548,7 @@ class CMBP1Msg(Record):
2496
2548
 
2497
2549
  Returns
2498
2550
  -------
2499
- Side
2551
+ Side | str
2500
2552
 
2501
2553
  """
2502
2554
 
@@ -2630,7 +2682,7 @@ class CBBOMsg(Record):
2630
2682
  """
2631
2683
 
2632
2684
  @property
2633
- def side(self) -> Side:
2685
+ def side(self) -> Side | str:
2634
2686
  """
2635
2687
  The side that initiated the last trade. Can be **A**sk for a sell order (or sell
2636
2688
  aggressor in a trade), **B**id for a buy order (or buy aggressor in a trade), or
@@ -2640,7 +2692,7 @@ class CBBOMsg(Record):
2640
2692
 
2641
2693
  Returns
2642
2694
  -------
2643
- Side
2695
+ Side | str
2644
2696
 
2645
2697
  """
2646
2698
 
@@ -2920,35 +2972,35 @@ class StatusMsg(Record):
2920
2972
  """
2921
2973
 
2922
2974
  @property
2923
- def action(self) -> StatusAction:
2975
+ def action(self) -> StatusAction | int:
2924
2976
  """
2925
2977
  The type of status change.
2926
2978
 
2927
2979
  Returns
2928
2980
  -------
2929
- StatusAction
2981
+ StatusAction | int
2930
2982
 
2931
2983
  """
2932
2984
 
2933
2985
  @property
2934
- def reason(self) -> StatusReason:
2986
+ def reason(self) -> StatusReason | int:
2935
2987
  """
2936
2988
  Additional details about the cause of the status change.
2937
2989
 
2938
2990
  Returns
2939
2991
  -------
2940
- StatusReason
2992
+ StatusReason | int
2941
2993
 
2942
2994
  """
2943
2995
 
2944
2996
  @property
2945
- def trading_event(self) -> TradingEvent:
2997
+ def trading_event(self) -> TradingEvent | int:
2946
2998
  """
2947
2999
  Further information about the status change and its effect on trading.
2948
3000
 
2949
3001
  Returns
2950
3002
  -------
2951
- TradingEvent
3003
+ TradingEvent | int
2952
3004
 
2953
3005
  """
2954
3006
 
@@ -3016,7 +3068,7 @@ class InstrumentDefMsg(Record):
3016
3068
  raw_instrument_id: int = 0,
3017
3069
  leg_price: int = UNDEF_PRICE,
3018
3070
  leg_delta: int = UNDEF_PRICE,
3019
- inst_attrib_value: int = 0,
3071
+ inst_attrib_value: int | None = None,
3020
3072
  underlying_id: int = 0,
3021
3073
  market_depth_implied: int | None = None,
3022
3074
  market_depth: int | None = None,
@@ -3038,7 +3090,7 @@ class InstrumentDefMsg(Record):
3038
3090
  appl_id: int | None = None,
3039
3091
  maturity_year: int | None = None,
3040
3092
  decay_start_date: int | None = None,
3041
- channel_id: int = 0,
3093
+ channel_id: int | None = None,
3042
3094
  leg_count: int = 0,
3043
3095
  leg_index: int = 0,
3044
3096
  currency: str = "",
@@ -3938,7 +3990,7 @@ class InstrumentDefMsg(Record):
3938
3990
  """
3939
3991
 
3940
3992
  @property
3941
- def instrument_class(self) -> InstrumentClass:
3993
+ def instrument_class(self) -> InstrumentClass | str:
3942
3994
  """
3943
3995
  The classification of the instrument.
3944
3996
 
@@ -3946,12 +3998,12 @@ class InstrumentDefMsg(Record):
3946
3998
 
3947
3999
  Returns
3948
4000
  -------
3949
- InstrumentClass
4001
+ InstrumentClass | str
3950
4002
 
3951
4003
  """
3952
4004
 
3953
4005
  @property
3954
- def match_algorithm(self) -> MatchAlgorithm:
4006
+ def match_algorithm(self) -> MatchAlgorithm | str:
3955
4007
  """
3956
4008
  The matching algorithm used for the instrument, typically **F**IFO.
3957
4009
 
@@ -3959,7 +4011,7 @@ class InstrumentDefMsg(Record):
3959
4011
 
3960
4012
  Returns
3961
4013
  -------
3962
- MatchAlgorithm
4014
+ MatchAlgorithm | str
3963
4015
 
3964
4016
  """
3965
4017
 
@@ -4008,13 +4060,13 @@ class InstrumentDefMsg(Record):
4008
4060
  """
4009
4061
 
4010
4062
  @property
4011
- def security_update_action(self) -> SecurityUpdateAction:
4063
+ def security_update_action(self) -> SecurityUpdateAction | str:
4012
4064
  """
4013
4065
  Indicates if the instrument definition has been added, modified, or deleted.
4014
4066
 
4015
4067
  Returns
4016
4068
  -------
4017
- SecurityUpdateAction
4069
+ SecurityUpdateAction | str
4018
4070
 
4019
4071
  """
4020
4072
 
@@ -4052,13 +4104,13 @@ class InstrumentDefMsg(Record):
4052
4104
  """
4053
4105
 
4054
4106
  @property
4055
- def user_defined_instrument(self) -> UserDefinedInstrument:
4107
+ def user_defined_instrument(self) -> UserDefinedInstrument | str:
4056
4108
  """
4057
4109
  Indicates if the instrument is user defined: **Y**es or **N**o.
4058
4110
 
4059
4111
  Returns
4060
4112
  -------
4061
- UserDefinedInstrument
4113
+ UserDefinedInstrument | str
4062
4114
 
4063
4115
  """
4064
4116
 
@@ -4096,24 +4148,24 @@ class InstrumentDefMsg(Record):
4096
4148
  """
4097
4149
 
4098
4150
  @property
4099
- def leg_instrument_class(self) -> InstrumentClass:
4151
+ def leg_instrument_class(self) -> InstrumentClass | str:
4100
4152
  """
4101
4153
  The classification of the leg instrument.
4102
4154
 
4103
4155
  Returns
4104
4156
  -------
4105
- InstrumentClass
4157
+ InstrumentClass | str
4106
4158
 
4107
4159
  """
4108
4160
 
4109
4161
  @property
4110
- def leg_side(self) -> Side:
4162
+ def leg_side(self) -> Side | str:
4111
4163
  """
4112
4164
  The side taken for the leg when purchasing the spread.
4113
4165
 
4114
4166
  Returns
4115
4167
  -------
4116
- Side
4168
+ Side | str
4117
4169
 
4118
4170
  """
4119
4171
 
@@ -4473,7 +4525,7 @@ class ImbalanceMsg(Record):
4473
4525
  """
4474
4526
 
4475
4527
  @property
4476
- def side(self) -> Side:
4528
+ def side(self) -> Side | str:
4477
4529
  """
4478
4530
  The market side of the `total_imbalance_qty`. Can be **A**sk, **B**id, or **N**one.
4479
4531
 
@@ -4481,7 +4533,7 @@ class ImbalanceMsg(Record):
4481
4533
 
4482
4534
  Returns
4483
4535
  -------
4484
- Side
4536
+ Side | str
4485
4537
 
4486
4538
  """
4487
4539
 
@@ -4519,13 +4571,13 @@ class ImbalanceMsg(Record):
4519
4571
  """
4520
4572
 
4521
4573
  @property
4522
- def unpaired_side(self) -> Side:
4574
+ def unpaired_side(self) -> Side | str:
4523
4575
  """
4524
4576
  Reserved for future use.
4525
4577
 
4526
4578
  Returns
4527
4579
  -------
4528
- Side
4580
+ Side | str
4529
4581
 
4530
4582
  """
4531
4583
 
@@ -4559,7 +4611,7 @@ class StatMsg(Record):
4559
4611
  stat_type: StatType,
4560
4612
  sequence: int = 0,
4561
4613
  ts_in_delta: int = 0,
4562
- channel_id: int = 0,
4614
+ channel_id: int | None = None,
4563
4615
  update_action: StatUpdateAction | None = None,
4564
4616
  stat_flags: int = 0,
4565
4617
  ) -> None: ...
@@ -4684,14 +4736,14 @@ class StatMsg(Record):
4684
4736
  """
4685
4737
 
4686
4738
  @property
4687
- def stat_type(self) -> StatType:
4739
+ def stat_type(self) -> StatType | int:
4688
4740
  """
4689
4741
  The type of statistic value contained in the message. Refer to the
4690
4742
  `StatType` enum for possible variants.
4691
4743
 
4692
4744
  Returns
4693
4745
  -------
4694
- StatType
4746
+ StatType | int
4695
4747
 
4696
4748
  """
4697
4749
 
@@ -4707,14 +4759,14 @@ class StatMsg(Record):
4707
4759
  """
4708
4760
 
4709
4761
  @property
4710
- def update_action(self) -> StatUpdateAction:
4762
+ def update_action(self) -> StatUpdateAction | int:
4711
4763
  """
4712
4764
  Indicates if the statistic is newly added (1) or deleted (2). (Deleted is only
4713
4765
  used with some stat types).
4714
4766
 
4715
4767
  Returns
4716
4768
  -------
4717
- StatUpdateAction
4769
+ StatUpdateAction | int
4718
4770
 
4719
4771
  """
4720
4772
 
@@ -4750,13 +4802,13 @@ class ErrorMsg(Record):
4750
4802
  """
4751
4803
 
4752
4804
  @property
4753
- def code(self) -> ErrorCode:
4805
+ def code(self) -> ErrorCode | int:
4754
4806
  """
4755
4807
  The error code. See the `ErrorCode` enum for possible values.
4756
4808
 
4757
4809
  Returns
4758
4810
  -------
4759
- ErrorCode
4811
+ ErrorCode | int
4760
4812
 
4761
4813
  """
4762
4814
 
@@ -4792,13 +4844,13 @@ class SymbolMappingMsg(Record):
4792
4844
  end_ts: int,
4793
4845
  ) -> None: ...
4794
4846
  @property
4795
- def stype_in(self) -> SType:
4847
+ def stype_in(self) -> SType | int:
4796
4848
  """
4797
4849
  The input symbology type of `stype_in_symbol`.
4798
4850
 
4799
4851
  Returns
4800
4852
  -------
4801
- SType
4853
+ SType | int
4802
4854
 
4803
4855
  """
4804
4856
 
@@ -4814,13 +4866,13 @@ class SymbolMappingMsg(Record):
4814
4866
  """
4815
4867
 
4816
4868
  @property
4817
- def stype_out(self) -> SType:
4869
+ def stype_out(self) -> SType | int:
4818
4870
  """
4819
4871
  The output symbology type of `stype_out_symbol`.
4820
4872
 
4821
4873
  Returns
4822
4874
  -------
4823
- SType
4875
+ SType | int
4824
4876
 
4825
4877
  """
4826
4878
 
@@ -4914,13 +4966,13 @@ class SystemMsg(Record):
4914
4966
  """
4915
4967
 
4916
4968
  @property
4917
- def code(self) -> SystemCode:
4969
+ def code(self) -> SystemCode | int:
4918
4970
  """
4919
4971
  Type of system message. See the `SystemCode` enum for possible values.
4920
4972
 
4921
4973
  Returns
4922
4974
  -------
4923
- SystemCode
4975
+ SystemCode | int
4924
4976
 
4925
4977
  """
4926
4978
 
@@ -5734,7 +5786,7 @@ class InstrumentDefMsgV1(Record):
5734
5786
  """
5735
5787
 
5736
5788
  @property
5737
- def instrument_class(self) -> InstrumentClass:
5789
+ def instrument_class(self) -> InstrumentClass | str:
5738
5790
  """
5739
5791
  The classification of the instrument.
5740
5792
 
@@ -5742,7 +5794,7 @@ class InstrumentDefMsgV1(Record):
5742
5794
 
5743
5795
  Returns
5744
5796
  -------
5745
- InstrumentClass
5797
+ InstrumentClass | str
5746
5798
 
5747
5799
  """
5748
5800
 
@@ -5780,7 +5832,7 @@ class InstrumentDefMsgV1(Record):
5780
5832
  """
5781
5833
 
5782
5834
  @property
5783
- def match_algorithm(self) -> MatchAlgorithm:
5835
+ def match_algorithm(self) -> MatchAlgorithm | str:
5784
5836
  """
5785
5837
  The matching algorithm used for the instrument, typically **F**IFO.
5786
5838
 
@@ -5788,7 +5840,7 @@ class InstrumentDefMsgV1(Record):
5788
5840
 
5789
5841
  Returns
5790
5842
  -------
5791
- MatchAlgorithm
5843
+ MatchAlgorithm | str
5792
5844
 
5793
5845
  """
5794
5846
 
@@ -5965,7 +6017,7 @@ class StatMsgV1(Record):
5965
6017
  stat_type: StatType,
5966
6018
  sequence: int = 0,
5967
6019
  ts_in_delta: int = 0,
5968
- channel_id: int = 0,
6020
+ channel_id: int | None = None,
5969
6021
  update_action: StatUpdateAction | None = None,
5970
6022
  stat_flags: int = 0,
5971
6023
  ) -> None: ...
@@ -6090,14 +6142,14 @@ class StatMsgV1(Record):
6090
6142
  """
6091
6143
 
6092
6144
  @property
6093
- def stat_type(self) -> StatType:
6145
+ def stat_type(self) -> StatType | int:
6094
6146
  """
6095
6147
  The type of statistic value contained in the message. Refer to the
6096
6148
  `StatType` enum for possible variants.
6097
6149
 
6098
6150
  Returns
6099
6151
  -------
6100
- StatType
6152
+ StatType | int
6101
6153
 
6102
6154
  """
6103
6155
 
@@ -6113,14 +6165,14 @@ class StatMsgV1(Record):
6113
6165
  """
6114
6166
 
6115
6167
  @property
6116
- def update_action(self) -> StatUpdateAction:
6168
+ def update_action(self) -> StatUpdateAction | int:
6117
6169
  """
6118
6170
  Indicates if the statistic is newly added (1) or deleted (2). (Deleted is only
6119
6171
  used with some stat types).
6120
6172
 
6121
6173
  Returns
6122
6174
  -------
6123
- StatUpdateAction
6175
+ StatUpdateAction | int
6124
6176
 
6125
6177
  """
6126
6178
 
@@ -7076,7 +7128,7 @@ class InstrumentDefMsgV2(Record):
7076
7128
  """
7077
7129
 
7078
7130
  @property
7079
- def instrument_class(self) -> InstrumentClass:
7131
+ def instrument_class(self) -> InstrumentClass | str:
7080
7132
  """
7081
7133
  The classification of the instrument.
7082
7134
 
@@ -7084,12 +7136,12 @@ class InstrumentDefMsgV2(Record):
7084
7136
 
7085
7137
  Returns
7086
7138
  -------
7087
- InstrumentClass
7139
+ InstrumentClass | str
7088
7140
 
7089
7141
  """
7090
7142
 
7091
7143
  @property
7092
- def match_algorithm(self) -> MatchAlgorithm:
7144
+ def match_algorithm(self) -> MatchAlgorithm | str:
7093
7145
  """
7094
7146
  The matching algorithm used for the instrument, typically **F**IFO.
7095
7147
 
@@ -7097,7 +7149,7 @@ class InstrumentDefMsgV2(Record):
7097
7149
 
7098
7150
  Returns
7099
7151
  -------
7100
- MatchAlgorithm
7152
+ MatchAlgorithm | str
7101
7153
 
7102
7154
  """
7103
7155
 
@@ -7168,13 +7220,13 @@ class InstrumentDefMsgV2(Record):
7168
7220
  """
7169
7221
 
7170
7222
  @property
7171
- def security_update_action(self) -> SecurityUpdateAction:
7223
+ def security_update_action(self) -> SecurityUpdateAction | str:
7172
7224
  """
7173
7225
  Indicates if the instrument definition has been added, modified, or deleted.
7174
7226
 
7175
7227
  Returns
7176
7228
  -------
7177
- SecurityUpdateAction
7229
+ SecurityUpdateAction | str
7178
7230
 
7179
7231
  """
7180
7232
 
@@ -7346,7 +7398,7 @@ class Transcoder:
7346
7398
  pretty_px : bool, default True
7347
7399
  Whether to serialize fixed-precision prices as decimal strings. Only applicable
7348
7400
  to CSV and JSON.
7349
- pretty_ts : bool, default Tru | Nonee
7401
+ pretty_ts : bool, default True | None
7350
7402
  Whether to serialize nanosecond UNIX timestamps as ISO8601 datetime strings.
7351
7403
  Only applicable to CSV and JSON.
7352
7404
  map_symbols : bool, default None
databento_dbn/v1.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: F401, F811
1
+ # ruff: noqa: F401
2
2
  from ._lib import BBOMsg
3
3
  from ._lib import CBBOMsg
4
4
  from ._lib import CMBP1Msg
databento_dbn/v2.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: F401, F811
1
+ # ruff: noqa: F401
2
2
  from ._lib import BBOMsg
3
3
  from ._lib import CBBOMsg
4
4
  from ._lib import CMBP1Msg
databento_dbn/v3.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: F401, F811
1
+ # ruff: noqa: F401
2
2
  from ._lib import BBOMsg
3
3
  from ._lib import CBBOMsg
4
4
  from ._lib import CMBP1Msg
@@ -1,18 +1,22 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: databento-dbn
3
- Version: 0.41.0
3
+ Version: 0.43.0
4
4
  Classifier: Programming Language :: Rust
5
5
  Classifier: Programming Language :: Python :: Implementation :: CPython
6
6
  Summary: Python bindings for encoding and decoding Databento Binary Encoding (DBN)
7
7
  Author-email: Databento <support@databento.com>
8
8
  License-Expression: Apache-2.0
9
- Requires-Python: >=3.9
9
+ Requires-Python: >=3.10
10
10
  Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
11
+ Project-URL: Homepage, https://databento.com
12
+ Project-URL: Documentation, https://databento.com/docs
13
+ Project-URL: Repository, https://github.com/databento/dbn
14
+ Project-URL: Bug Tracker, https://github.com/databento/dbn/issues
11
15
 
12
16
  # databento-dbn
13
17
 
14
18
  [![build](https://github.com/databento/dbn/actions/workflows/build.yaml/badge.svg)](https://github.com/databento/dbn/actions/workflows/build.yaml)
15
- ![python](https://img.shields.io/badge/python-3.9+-blue.svg)
19
+ ![python](https://img.shields.io/badge/python-3.10+-blue.svg)
16
20
  ![license](https://img.shields.io/github/license/databento/dbn?color=blue)
17
21
  [![pypi-version](https://img.shields.io/pypi/v/databento_dbn)](https://pypi.org/project/databento-dbn)
18
22
 
@@ -0,0 +1,10 @@
1
+ databento_dbn-0.43.0.dist-info/METADATA,sha256=0m38L2sRsmA2BJq1AzerWM-_ktHMUZy-3tklyyQbC7k,2293
2
+ databento_dbn-0.43.0.dist-info/WHEEL,sha256=73R9gF1Kx45mnq358tC7C3GKhsVvyIHwOBt6LvI35MM,106
3
+ databento_dbn/__init__.py,sha256=yIvmw2ScoiVm1H5uQhdWdVYGg97vjRMoKiekICqWPyQ,1123
4
+ databento_dbn/_lib.cpython-313-darwin.so,sha256=ufiN3Rqzuk6wInemeSsnOzt9aV34QHSFHpPM-pi6ip4,4962788
5
+ databento_dbn/_lib.pyi,sha256=F8mq1HCbGqDLs06Fu3WbY12XuwTUe5jvsY19RqYOurI,163423
6
+ databento_dbn/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ databento_dbn/v1.py,sha256=_iwCfC_2DTuyQrguK9TCJ8lN-NZBPZZ3BezHAT1dQb0,651
8
+ databento_dbn/v2.py,sha256=NDa-Tok4Fb3tLTaPB-pjOrmfhWuXSsxE_73eCkhb4FM,600
9
+ databento_dbn/v3.py,sha256=DJSe9o0LhjBJz7PCG9pnYlxDLbONRJG0-RMm0WsEpX4,565
10
+ databento_dbn-0.43.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: maturin (1.9.3)
2
+ Generator: maturin (1.9.6)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp313-cp313-macosx_10_12_x86_64
@@ -1,10 +0,0 @@
1
- databento_dbn-0.41.0.dist-info/METADATA,sha256=kDLhY5uE5dscTuoPQ7F1iyELn9VnjGp9DOIx0xDFOeE,2067
2
- databento_dbn-0.41.0.dist-info/WHEEL,sha256=NvZaK6sFPuu8Uh9tMXGKWxMrGLxBro5TQniO6rRq4wQ,106
3
- databento_dbn/__init__.py,sha256=yIvmw2ScoiVm1H5uQhdWdVYGg97vjRMoKiekICqWPyQ,1123
4
- databento_dbn/_lib.cpython-313-darwin.so,sha256=X8RaNJPTerwaWny1p4zMBfUpeJVHRHO-Sh7oPqrKmzI,5090048
5
- databento_dbn/_lib.pyi,sha256=f34oEfsaehq_Wy28Ze94CSmDpxej1b3rxFiMrGz3vR4,161028
6
- databento_dbn/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- databento_dbn/v1.py,sha256=aY6fk7n1__CS6RWckiKgmqS9CgngcQcqdSgwr-416xM,657
8
- databento_dbn/v2.py,sha256=lxYKBIfdMh4JkKDEVj4RtUn3asjMS9aSFX_eK4ukLBY,606
9
- databento_dbn/v3.py,sha256=liE8qck_KPlNH2xZjmvUv4rQHImvXBZEc4l76o2fBfE,571
10
- databento_dbn-0.41.0.dist-info/RECORD,,