diff --git a/Cargo.toml b/Cargo.toml index ed73244658..e76bbb1f4b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,13 +36,32 @@ inherits = "release" # # Every dependency that a libdatadog crate inherits via `{ workspace = true }` # must be declared here, because those crates resolve their workspace -# inheritance against this manifest when built as path dependencies. Keep this -# list in sync with libdatadog's own `[workspace.dependencies]`; libdatadog -# #2253 consolidated `anyhow`, `serde`, `tokio` and `tracing` to the workspace -# level, so they are mirrored here too. +# inheritance against this manifest when built as path dependencies. Note that +# this applies to `[dev-dependencies]` and `[build-dependencies]` too: workspace +# inheritance is resolved when the manifest is parsed, before cargo decides +# which dependency kinds it actually needs. +# +# Keep this list a mirror of libdatadog's own `[workspace.dependencies]`; the +# libdatadog workspace-dependency migration (#2253 phase 1, #2270 phase 2, +# #2283 phase 3, #2296 phase 4) moved the whole set below to the workspace +# level. Specs are copied verbatim from `libdatadog/Cargo.toml` so that the +# resolved dependency is identical to what libdatadog builds against; the leaf +# crates opt into the features they need themselves. +# +# The only intentional deviation is `hyper`/`hyper-util`, which carry extra +# features here from before the mirror was complete. Feature sets are unioned, +# so this is a superset of libdatadog's and harmless. [workspace.dependencies] -anyhow = { version = "1.0", default-features = false } +allocator-api2 = { version = "0.2.21", default-features = false } arc-swap = "1.7.1" +anyhow = { version = "1.0", default-features = false } +bolero = { version = "0.13.4", default-features = false } +chrono = { version = "0.4.38", default-features = false } +clap = { version = "4.3.21", default-features = false } +criterion = { version = "0.5.1", default-features = true } +cxx-build = { version = "1.0", default-features = false } +elf = { version = "0.7", default-features = false } +futures = { version = "0.3", default-features = false } hyper = { version = "1.6", features = [ "http1", "client", @@ -52,12 +71,20 @@ hyper-util = { version = "0.1.10", features = [ "client", "client-legacy", ] } +io-lifetimes = { version = "1.0", default-features = false } +libc = { version = "0.2", default-features = true } prost-build = { version = "0.14.1", default-features = false } protoc-bin-vendored = { version = "3.0.0", default-features = false } +rustls = { version = "0.23", default-features = false } serde = { version = "1.0", default-features = false } serde_json = { version = "1.0", default-features = false, features = ["alloc"] } +syn = { version = "^2", default-features = false } +tempfile = { version = "3.13", default-features = false, features = [ + "getrandom", +] } tokio = { version = "1.36", default-features = false } tracing = { version = "0.1", default-features = false } +uuid = { version = "1.7.0", default-features = false } [workspace.lints] # empty for compat with libdatadog diff --git a/libdatadog b/libdatadog index f2010b616f..7b8cb2a773 160000 --- a/libdatadog +++ b/libdatadog @@ -1 +1 @@ -Subproject commit f2010b616feac15557a2b07e6ffd8c1899c69c63 +Subproject commit 7b8cb2a77344a2207483dfb0950b4efa6df5b66f