From 45d6f8d2acc1cda2fbac9317a3afd4b6aeb728d4 Mon Sep 17 00:00:00 2001 From: Renan Gemignani Date: Thu, 23 May 2024 12:57:02 +0200 Subject: [PATCH 1/4] ADD: Add new stat type for auction uncrossing --- CHANGELOG.md | 5 +++++ python/python/databento_dbn/_lib.pyi | 7 +++++++ rust/dbn/src/enums.rs | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0cecf8d..f093a00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## 0.19.0 - TBD + +### Enhancements +- Added new `stat_type` for UncrossingPrice. + ## 0.18.0 - 2024-05-21 ### Enhancements diff --git a/python/python/databento_dbn/_lib.pyi b/python/python/databento_dbn/_lib.pyi index 92276a4..44791a2 100644 --- a/python/python/databento_dbn/_lib.pyi +++ b/python/python/databento_dbn/_lib.pyi @@ -451,6 +451,7 @@ class StatType(Enum): OPENING_PRICE The price of the first trade of an instrument. `price` will be set. + `quantity` will be set when provided by the venue. INDICATIVE_OPENING_PRICE The probable price of the first trade of an instrument published during pre- open. Both `price` and `quantity` will be set. @@ -476,6 +477,7 @@ class StatType(Enum): The volume-weighted average price (VWAP) for a fixing period. `price` will be set. CLOSE_PRICE The last trade price during a trading session. `price` will be set. + `quantity` will be set when provided by the venue. NET_CHANGE The change in price from the close price of the previous trading session to the most recent trading session. `price` will be set. @@ -486,6 +488,10 @@ class StatType(Enum): The implied volatility associated with the settlement price. DELTA The option delta associated with the settlement price. + UNCROSSING_PRICE + The auction uncrossing price. This is used for auctions that are neither the + official opening auction nor the official closing auction. `price` will be set. + `quantity` will be set when provided by the venue. """ @@ -504,6 +510,7 @@ class StatType(Enum): VWAP: int VOLATILITY: int DELTA: int + UNCROSSING_PRICE: int @classmethod def variants(cls) -> Iterable[StatType]: ... diff --git a/rust/dbn/src/enums.rs b/rust/dbn/src/enums.rs index aebc93e..8c2b844 100644 --- a/rust/dbn/src/enums.rs +++ b/rust/dbn/src/enums.rs @@ -853,6 +853,7 @@ pub enum SecurityUpdateAction { #[repr(u16)] pub enum StatType { /// The price of the first trade of an instrument. `price` will be set. + /// `quantity` will be set when provided by the venue. OpeningPrice = 1, /// The probable price of the first trade of an instrument published during pre- /// open. Both `price` and `quantity` will be set. @@ -884,6 +885,7 @@ pub enum StatType { /// set. FixingPrice = 10, /// The last trade price during a trading session. `price` will be set. + /// `quantity` will be set when provided by the venue. ClosePrice = 11, /// The change in price from the close price of the previous trading session to the /// most recent trading session. `price` will be set. @@ -898,6 +900,10 @@ pub enum StatType { /// The option delta associated with the settlement price. `price` will be set with /// the standard precision. Delta = 15, + /// The auction uncrossing price. This is used for auctions that are neither the + /// official opening auction nor the official closing auction. `price` will be set. + /// `quantity` will be set when provided by the venue. + UncrossingPrice = 16, } /// The type of [`StatMsg`](crate::record::StatMsg) update. From 939d7533347bf3e9b939da19c7a52ae555c8230b Mon Sep 17 00:00:00 2001 From: Renan Gemignani Date: Mon, 27 May 2024 12:56:47 +0200 Subject: [PATCH 2/4] ADD: Add XNAS.BASIC publishers --- CHANGELOG.md | 4 ++++ rust/dbn/src/publishers.rs | 37 +++++++++++++++++++++++++++++++------ 2 files changed, 35 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f093a00..24a38d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ ### Enhancements - Added new `stat_type` for UncrossingPrice. +- Added new publisher values for `XNAS.BASIC` + +### Bug fixes +- Fix descriptions for `FINN` and `FINY` publishers. ## 0.18.0 - 2024-05-21 diff --git a/rust/dbn/src/publishers.rs b/rust/dbn/src/publishers.rs index 007e7a6..2a05286 100644 --- a/rust/dbn/src/publishers.rs +++ b/rust/dbn/src/publishers.rs @@ -281,10 +281,12 @@ pub enum Dataset { NdexImpact = 29, /// Databento Equities Max DbeqMax = 30, + /// Nasdaq Basic (NLS+QBBO) + XnasBasic = 31, } /// The number of Dataset variants. -pub const DATASET_COUNT: usize = 30; +pub const DATASET_COUNT: usize = 31; impl Dataset { /// Convert a Dataset to its `str` representation. @@ -322,6 +324,7 @@ impl Dataset { Self::IfeuImpact => "IFEU.IMPACT", Self::NdexImpact => "NDEX.IMPACT", Self::DbeqMax => "DBEQ.MAX", + Self::XnasBasic => "XNAS.BASIC", } } } @@ -375,6 +378,7 @@ impl std::str::FromStr for Dataset { "IFEU.IMPACT" => Ok(Self::IfeuImpact), "NDEX.IMPACT" => Ok(Self::NdexImpact), "DBEQ.MAX" => Ok(Self::DbeqMax), + "XNAS.BASIC" => Ok(Self::XnasBasic), _ => Err(Error::conversion::(s)), } } @@ -491,9 +495,9 @@ pub enum Publisher { DbeqPlusXnas = 52, /// DBEQ Plus - NYSE DbeqPlusXnys = 53, - /// DBEQ Plus - FINRA/NYSE TRF - DbeqPlusFinn = 54, /// DBEQ Plus - FINRA/Nasdaq TRF Carteret + DbeqPlusFinn = 54, + /// DBEQ Plus - FINRA/NYSE TRF DbeqPlusFiny = 55, /// DBEQ Plus - FINRA/Nasdaq TRF Chicago DbeqPlusFinc = 56, @@ -519,9 +523,9 @@ pub enum Publisher { DbeqMaxXnas = 66, /// DBEQ Max - NYSE DbeqMaxXnys = 67, - /// DBEQ Max - FINRA/NYSE TRF - DbeqMaxFinn = 68, /// DBEQ Max - FINRA/Nasdaq TRF Carteret + DbeqMaxFinn = 68, + /// DBEQ Max - FINRA/NYSE TRF DbeqMaxFiny = 69, /// DBEQ Max - FINRA/Nasdaq TRF Chicago DbeqMaxFinc = 70, @@ -545,10 +549,16 @@ pub enum Publisher { DbeqMaxArcx = 79, /// DBEQ Max - Long-Term Stock Exchange DbeqMaxLtse = 80, + /// Nasdaq Basic - Nasdaq + XnasBasicXnas = 81, + /// Nasdaq Basic - FINRA/Nasdaq TRF Carteret + XnasBasicFinn = 82, + /// Nasdaq Basic - FINRA/Nasdaq TRF Chicago + XnasBasicFinc = 83, } /// The number of Publisher variants. -pub const PUBLISHER_COUNT: usize = 80; +pub const PUBLISHER_COUNT: usize = 83; impl Publisher { /// Convert a Publisher to its `str` representation. @@ -634,6 +644,9 @@ impl Publisher { Self::DbeqMaxXase => "DBEQ.MAX.XASE", Self::DbeqMaxArcx => "DBEQ.MAX.ARCX", Self::DbeqMaxLtse => "DBEQ.MAX.LTSE", + Self::XnasBasicXnas => "XNAS.BASIC.XNAS", + Self::XnasBasicFinn => "XNAS.BASIC.FINN", + Self::XnasBasicFinc => "XNAS.BASIC.FINC", } } @@ -720,6 +733,9 @@ impl Publisher { Self::DbeqMaxXase => Venue::Xase, Self::DbeqMaxArcx => Venue::Arcx, Self::DbeqMaxLtse => Venue::Ltse, + Self::XnasBasicXnas => Venue::Xnas, + Self::XnasBasicFinn => Venue::Finn, + Self::XnasBasicFinc => Venue::Finc, } } @@ -806,6 +822,9 @@ impl Publisher { Self::DbeqMaxXase => Dataset::DbeqMax, Self::DbeqMaxArcx => Dataset::DbeqMax, Self::DbeqMaxLtse => Dataset::DbeqMax, + Self::XnasBasicXnas => Dataset::XnasBasic, + Self::XnasBasicFinn => Dataset::XnasBasic, + Self::XnasBasicFinc => Dataset::XnasBasic, } } @@ -894,6 +913,9 @@ impl Publisher { (Dataset::DbeqMax, Venue::Xase) => Ok(Self::DbeqMaxXase), (Dataset::DbeqMax, Venue::Arcx) => Ok(Self::DbeqMaxArcx), (Dataset::DbeqMax, Venue::Ltse) => Ok(Self::DbeqMaxLtse), + (Dataset::XnasBasic, Venue::Xnas) => Ok(Self::XnasBasicXnas), + (Dataset::XnasBasic, Venue::Finn) => Ok(Self::XnasBasicFinn), + (Dataset::XnasBasic, Venue::Finc) => Ok(Self::XnasBasicFinc), _ => Err(Error::conversion::(format!("({dataset}, {venue})"))), } } @@ -996,6 +1018,9 @@ impl std::str::FromStr for Publisher { "DBEQ.MAX.XASE" => Ok(Self::DbeqMaxXase), "DBEQ.MAX.ARCX" => Ok(Self::DbeqMaxArcx), "DBEQ.MAX.LTSE" => Ok(Self::DbeqMaxLtse), + "XNAS.BASIC.XNAS" => Ok(Self::XnasBasicXnas), + "XNAS.BASIC.FINN" => Ok(Self::XnasBasicFinn), + "XNAS.BASIC.FINC" => Ok(Self::XnasBasicFinc), _ => Err(Error::conversion::(s)), } } From 08e1adcd6097988a904a21521ecce513ef1c94c0 Mon Sep 17 00:00:00 2001 From: Renan Gemignani Date: Mon, 3 Jun 2024 22:35:29 +0200 Subject: [PATCH 3/4] ADD: Add synthetic publisher for off-market trades --- CHANGELOG.md | 3 ++- rust/dbn/src/publishers.rs | 22 ++++++++++++++++++++-- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 24a38d5..3d512a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,8 +3,9 @@ ## 0.19.0 - TBD ### Enhancements -- Added new `stat_type` for UncrossingPrice. +- Added new `stat_type` for UncrossingPrice - Added new publisher values for `XNAS.BASIC` +- Added new off-market publisher values for `IFEU.IMPACT` and `NDEX.IMPACT` ### Bug fixes - Fix descriptions for `FINN` and `FINY` publishers. diff --git a/rust/dbn/src/publishers.rs b/rust/dbn/src/publishers.rs index 2a05286..ff72f44 100644 --- a/rust/dbn/src/publishers.rs +++ b/rust/dbn/src/publishers.rs @@ -95,10 +95,12 @@ pub enum Venue { Sphr = 41, /// Long-Term Stock Exchange, Inc. Ltse = 42, + /// Off-Exchange Transactions - Listed Instruments + Xoff = 43, } /// The number of Venue variants. -pub const VENUE_COUNT: usize = 42; +pub const VENUE_COUNT: usize = 43; impl Venue { /// Convert a Venue to its `str` representation. @@ -146,6 +148,7 @@ impl Venue { Self::Dbeq => "DBEQ", Self::Sphr => "SPHR", Self::Ltse => "LTSE", + Self::Xoff => "XOFF", } } } @@ -209,6 +212,7 @@ impl std::str::FromStr for Venue { "DBEQ" => Ok(Self::Dbeq), "SPHR" => Ok(Self::Sphr), "LTSE" => Ok(Self::Ltse), + "XOFF" => Ok(Self::Xoff), _ => Err(Error::conversion::(s)), } } @@ -555,10 +559,14 @@ pub enum Publisher { XnasBasicFinn = 82, /// Nasdaq Basic - FINRA/Nasdaq TRF Chicago XnasBasicFinc = 83, + /// ICE Futures Europe - Off-Market Trades + IfeuImpactXoff = 84, + /// ICE Endex - Off-Market Trades + NdexImpactXoff = 85, } /// The number of Publisher variants. -pub const PUBLISHER_COUNT: usize = 83; +pub const PUBLISHER_COUNT: usize = 85; impl Publisher { /// Convert a Publisher to its `str` representation. @@ -647,6 +655,8 @@ impl Publisher { Self::XnasBasicXnas => "XNAS.BASIC.XNAS", Self::XnasBasicFinn => "XNAS.BASIC.FINN", Self::XnasBasicFinc => "XNAS.BASIC.FINC", + Self::IfeuImpactXoff => "IFEU.IMPACT.XOFF", + Self::NdexImpactXoff => "NDEX.IMPACT.XOFF", } } @@ -736,6 +746,8 @@ impl Publisher { Self::XnasBasicXnas => Venue::Xnas, Self::XnasBasicFinn => Venue::Finn, Self::XnasBasicFinc => Venue::Finc, + Self::IfeuImpactXoff => Venue::Xoff, + Self::NdexImpactXoff => Venue::Xoff, } } @@ -825,6 +837,8 @@ impl Publisher { Self::XnasBasicXnas => Dataset::XnasBasic, Self::XnasBasicFinn => Dataset::XnasBasic, Self::XnasBasicFinc => Dataset::XnasBasic, + Self::IfeuImpactXoff => Dataset::IfeuImpact, + Self::NdexImpactXoff => Dataset::NdexImpact, } } @@ -916,6 +930,8 @@ impl Publisher { (Dataset::XnasBasic, Venue::Xnas) => Ok(Self::XnasBasicXnas), (Dataset::XnasBasic, Venue::Finn) => Ok(Self::XnasBasicFinn), (Dataset::XnasBasic, Venue::Finc) => Ok(Self::XnasBasicFinc), + (Dataset::IfeuImpact, Venue::Xoff) => Ok(Self::IfeuImpactXoff), + (Dataset::NdexImpact, Venue::Xoff) => Ok(Self::NdexImpactXoff), _ => Err(Error::conversion::(format!("({dataset}, {venue})"))), } } @@ -1021,6 +1037,8 @@ impl std::str::FromStr for Publisher { "XNAS.BASIC.XNAS" => Ok(Self::XnasBasicXnas), "XNAS.BASIC.FINN" => Ok(Self::XnasBasicFinn), "XNAS.BASIC.FINC" => Ok(Self::XnasBasicFinc), + "IFEU.IMPACT.XOFF" => Ok(Self::IfeuImpactXoff), + "NDEX.IMPACT.XOFF" => Ok(Self::NdexImpactXoff), _ => Err(Error::conversion::(s)), } } From 98fd9ad446321083995e5deacd214347ccc08b6c Mon Sep 17 00:00:00 2001 From: Carter Green Date: Mon, 3 Jun 2024 14:24:31 -0500 Subject: [PATCH 4/4] VER: Release 0.18.1 --- CHANGELOG.md | 2 +- Cargo.lock | 137 +++++++++++++++++++++++-------------- Cargo.toml | 7 +- c/Cargo.toml | 2 +- python/pyproject.toml | 4 +- rust/dbn-cli/Cargo.toml | 4 +- rust/dbn-macros/Cargo.toml | 10 +-- rust/dbn/Cargo.toml | 8 +-- 8 files changed, 106 insertions(+), 68 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d512a7..26df779 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## 0.19.0 - TBD +## 0.18.1 - 2024-06-04 ### Enhancements - Added new `stat_type` for UncrossingPrice diff --git a/Cargo.lock b/Cargo.lock index d4b4920..b308211 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -76,9 +76,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.80" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1" +checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" [[package]] name = "assert_cmd" @@ -97,9 +97,9 @@ dependencies = [ [[package]] name = "async-compression" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c90a406b4495d129f00461241616194cb8a032c8d1c53c657f0961d5f8e0498" +checksum = "cd066d0b4ef8ecb03a55319dc13aa6910616d0f44008a045bb1835af830abff5" dependencies = [ "futures-core", "memchr", @@ -130,15 +130,6 @@ dependencies = [ "rustc-demangle", ] -[[package]] -name = "basic-toml" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2db21524cad41c5591204d22d75e1970a2d1f71060214ca931dc7d5afe2c14e5" -dependencies = [ - "serde", -] - [[package]] name = "bitflags" version = "1.3.2" @@ -183,7 +174,7 @@ dependencies = [ "serde_json", "syn 1.0.109", "tempfile", - "toml", + "toml 0.5.11", ] [[package]] @@ -233,7 +224,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -271,7 +262,7 @@ dependencies = [ [[package]] name = "databento-dbn" -version = "0.18.0" +version = "0.18.1" dependencies = [ "dbn", "pyo3", @@ -282,7 +273,7 @@ dependencies = [ [[package]] name = "dbn" -version = "0.18.0" +version = "0.18.1" dependencies = [ "async-compression", "csv", @@ -304,7 +295,7 @@ dependencies = [ [[package]] name = "dbn-c" -version = "0.18.0" +version = "0.18.1" dependencies = [ "anyhow", "cbindgen", @@ -314,7 +305,7 @@ dependencies = [ [[package]] name = "dbn-cli" -version = "0.18.0" +version = "0.18.1" dependencies = [ "anyhow", "assert_cmd", @@ -329,14 +320,14 @@ dependencies = [ [[package]] name = "dbn-macros" -version = "0.18.0" +version = "0.18.1" dependencies = [ "csv", "dbn", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.51", + "syn 2.0.66", "trybuild", ] @@ -455,7 +446,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -574,9 +565,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.153" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "linux-raw-sys" @@ -682,7 +673,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -789,14 +780,14 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" dependencies = [ - "toml_edit", + "toml_edit 0.21.1", ] [[package]] name = "proc-macro2" -version = "1.0.78" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" dependencies = [ "unicode-ident", ] @@ -848,7 +839,7 @@ dependencies = [ "proc-macro2", "pyo3-macros-backend", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -861,14 +852,14 @@ dependencies = [ "proc-macro2", "pyo3-build-config", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] name = "quote" -version = "1.0.35" +version = "1.0.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" dependencies = [ "proc-macro2", ] @@ -919,9 +910,9 @@ checksum = "e898588f33fdd5b9420719948f9f2a32c922a246964576f71ba7f24f80610fbc" [[package]] name = "rstest" -version = "0.18.2" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97eeab2f3c0a199bc4be135c36c924b6590b88c377d416494288c14f2db30199" +checksum = "9afd55a67069d6e434a95161415f5beeada95a01c7b815508a82dcb0e1593682" dependencies = [ "futures", "futures-timer", @@ -931,18 +922,19 @@ dependencies = [ [[package]] name = "rstest_macros" -version = "0.18.2" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d428f8247852f894ee1be110b375111b586d4fa431f6c46e64ba5a0dcccbe605" +checksum = "4165dfae59a39dd41d8dec720d3cbfbc71f69744efb480a3920f5d4e0cc6798d" dependencies = [ "cfg-if", "glob", + "proc-macro-crate", "proc-macro2", "quote", "regex", "relative-path", "rustc_version", - "syn 2.0.51", + "syn 2.0.66", "unicode-ident", ] @@ -1015,7 +1007,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -1029,6 +1021,15 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_spanned" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" +dependencies = [ + "serde", +] + [[package]] name = "slab" version = "0.4.9" @@ -1069,7 +1070,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -1085,9 +1086,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.51" +version = "2.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ab617d94515e94ae53b8406c628598680aa0c9587474ecbe58188f7b345d66c" +checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" dependencies = [ "proc-macro2", "quote", @@ -1102,9 +1103,9 @@ checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" [[package]] name = "tempfile" -version = "3.10.0" +version = "3.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67" +checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" dependencies = [ "cfg-if", "fastrand", @@ -1154,7 +1155,7 @@ checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81" dependencies = [ "proc-macro2", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -1209,7 +1210,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.51", + "syn 2.0.66", ] [[package]] @@ -1221,11 +1222,26 @@ dependencies = [ "serde", ] +[[package]] +name = "toml" +version = "0.8.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.22.12", +] + [[package]] name = "toml_datetime" version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +dependencies = [ + "serde", +] [[package]] name = "toml_edit" @@ -1235,22 +1251,34 @@ checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ "indexmap 2.2.3", "toml_datetime", - "winnow", + "winnow 0.5.40", +] + +[[package]] +name = "toml_edit" +version = "0.22.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef" +dependencies = [ + "indexmap 2.2.3", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.6.10", ] [[package]] name = "trybuild" -version = "1.0.89" +version = "1.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a9d3ba662913483d6722303f619e75ea10b7855b0f8e0d72799cf8621bb488f" +checksum = "33a5f13f11071020bb12de7a16b925d2d58636175c20c11dc5f96cb64bb6c9b3" dependencies = [ - "basic-toml", "glob", - "once_cell", "serde", "serde_derive", "serde_json", "termcolor", + "toml 0.8.12", ] [[package]] @@ -1473,6 +1501,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f217b6745021054125ef5741032a021a9c65f82bee2a8017cca928f1e3179991" +dependencies = [ + "memchr", +] + [[package]] name = "zstd" version = "0.13.0" diff --git a/Cargo.toml b/Cargo.toml index ca1905a..d3eea06 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,16 +11,17 @@ resolver = "2" [workspace.package] authors = ["Databento "] edition = "2021" -version = "0.18.0" +version = "0.18.1" documentation = "https://docs.databento.com" repository = "https://github.com/databento/dbn" license = "Apache-2.0" [workspace.dependencies] -anyhow = "1.0.80" +anyhow = "1.0.86" +csv = "1.3" pyo3 = "0.21.2" pyo3-build-config = "0.21.2" -rstest = "0.18.2" +rstest = "0.21.0" serde = { version = "1.0", features = ["derive"] } time = ">=0.3.35" zstd = "0.13" diff --git a/c/Cargo.toml b/c/Cargo.toml index 37c1948..5a43c34 100644 --- a/c/Cargo.toml +++ b/c/Cargo.toml @@ -16,7 +16,7 @@ crate-type = ["staticlib"] [dependencies] anyhow = { workspace = true } dbn = { path = "../rust/dbn", features = [] } -libc = "0.2.153" +libc = "0.2.155" [build-dependencies] cbindgen = { version = "0.26.0", default-features = false } diff --git a/python/pyproject.toml b/python/pyproject.toml index c3105d8..cdf69e8 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "databento-dbn" -version = "0.18.0" +version = "0.18.1" description = "Python bindings for encoding and decoding Databento Binary Encoding (DBN)" authors = ["Databento "] license = "Apache-2.0" @@ -17,7 +17,7 @@ build-backend = "maturin" [project] name = "databento-dbn" -version = "0.18.0" +version = "0.18.1" authors = [ { name = "Databento", email = "support@databento.com" } ] diff --git a/rust/dbn-cli/Cargo.toml b/rust/dbn-cli/Cargo.toml index cb8e9ea..34ba90d 100644 --- a/rust/dbn-cli/Cargo.toml +++ b/rust/dbn-cli/Cargo.toml @@ -16,7 +16,7 @@ name = "dbn" path = "src/main.rs" [dependencies] -dbn = { path = "../dbn", version = "=0.18.0", default-features = false } +dbn = { path = "../dbn", version = "=0.18.1", default-features = false } anyhow = { workspace = true } clap = { version = "4.5", features = ["derive", "wrap_help"] } @@ -30,4 +30,4 @@ assert_cmd = "2.0.14" predicates = "3.1.0" rstest = { workspace = true } # A library for managing temporary files and directories -tempfile = "3.10.0" +tempfile = "3.10.1" diff --git a/rust/dbn-macros/Cargo.toml b/rust/dbn-macros/Cargo.toml index 64c7b4a..9d7291b 100644 --- a/rust/dbn-macros/Cargo.toml +++ b/rust/dbn-macros/Cargo.toml @@ -13,13 +13,13 @@ proc-macro = true [dependencies] # Get name of current crate in macros, like $crate in macro_rules macros proc-macro-crate = "3.1.0" -proc-macro2 = "1.0.78" +proc-macro2 = "1.0.85" # Convert code to token streams -quote = "1.0.35" +quote = "1.0.36" # Token parsing -syn = { version = "2.0.51", features = ["full"] } +syn = { version = "2.0.66", features = ["full"] } [dev-dependencies] -csv = "1" +csv = { workspace = true } dbn = { path = "../dbn" } -trybuild = "1.0.89" +trybuild = "1.0.96" diff --git a/rust/dbn/Cargo.toml b/rust/dbn/Cargo.toml index 2ad40eb..01e3fe5 100644 --- a/rust/dbn/Cargo.toml +++ b/rust/dbn/Cargo.toml @@ -25,10 +25,10 @@ serde = ["dep:serde", "time/parsing", "time/serde"] trivial_copy = [] [dependencies] -dbn-macros = { version = "=0.18.0", path = "../dbn-macros" } +dbn-macros = { version = "=0.18.1", path = "../dbn-macros" } -async-compression = { version = "0.4.10", features = ["tokio", "zstd"], optional = true } -csv = "1.3" +async-compression = { version = "0.4.11", features = ["tokio", "zstd"], optional = true } +csv = { workspace = true } fallible-streaming-iterator = { version = "0.1.9", features = ["std"] } # Fast integer to string conversion itoa = "1.0" @@ -40,7 +40,7 @@ serde = { workspace = true, features = ["derive"], optional = true } strum = { version = "0.26", features = ["derive"], optional = true } thiserror = "1.0" time = { workspace = true, features = ["formatting", "macros"] } -tokio = { version = "1", features = ["fs", "io-util"], optional = true } +tokio = { version = ">=1.28", features = ["fs", "io-util"], optional = true } zstd = { workspace = true } [dev-dependencies]