Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
e7bff2e
chore: remove dead code
Aaalibaba42 Oct 23, 2026
45fc693
refactor: use tools/cc_utils in build script, drop it from libdd-common
Aaalibaba42 Oct 23, 2026
e78e0a3
chore: inline cstr! macro, drop libdd-common dependancy
Aaalibaba42 Oct 23, 2026
3703a6b
refactor: move LocalLimiter from libdd-common into libdd-ipc
Aaalibaba42 Oct 23, 2026
685b3a1
chore: fmt
Aaalibaba42 Oct 23, 2026
346fe10
refactor: move bench_utils/test_utils out of libdd-common
Aaalibaba42 Oct 23, 2026
13426bc
chore: remove unused dependancy
Aaalibaba42 Oct 23, 2026
1a854ad
fix(libdd-common): only depend on rand with the reqwest feature
morrisonlevi Oct 23, 2026
4fedc98
refactor(library-config-ffi): use C string literals instead of a copi…
morrisonlevi Oct 23, 2026
66338f5
docs: drop references to libdd-common's removed cstr module
morrisonlevi Oct 23, 2026
dc8e32e
build(libdd-common): drop windows-sys features used only by moved code
morrisonlevi Oct 23, 2026
3099080
docs(libdd-common): drop the rate limiter from the README
morrisonlevi Oct 23, 2026
81ac98d
Merge remote-tracking branch 'origin/main' into jwiriath/APMSP-4095-p…
morrisonlevi Oct 24, 2026
bf2a1a1
refactor(ipc): split rate_limiter into local and shm submodules
Aaalibaba42 Oct 26, 2026
371663a
refactor: drop cc_utils, use cc directly in build scripts
Aaalibaba42 Oct 26, 2026
033e925
chore: codeowner
Aaalibaba42 Oct 26, 2026
2ad8bbb
docs: revove mention of cstr macro skill
morrisonlevi Oct 26, 2026
bdfcaf4
Merge remote-tracking branch 'origin/main' into jwiriath/APMSP-4095-p…
Aaalibaba42 Oct 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .claude/skills/release-proposal-pr-review-bumps/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ Bump rules (per crate, based on the highest-severity change):
> **`pub` is not the reachability test.** Classify a rename or removal by whether the item is
> *externally reachable*, never by the presence of the `pub` token:
> - A `#[macro_export] macro_rules!` item carries no `pub` yet **is** public API — e.g.
> `libdd-common`'s `tag!` (`src/tag.rs`), `cstr!` and `cstr_u8!` (`src/cstr.rs`). Renaming or
> removing one breaks every consumer: **major**.
> `libdd-common`'s `tag!` (`src/tag.rs`). Renaming or removing one breaks every consumer:
> **major**.
> - Conversely, a rename confined to a genuinely private item — or to a `pub` item inside a
> non-`pub` module that nothing re-exports with `pub use` — has no public delta: **patch**, not
> minor.
Expand Down
2 changes: 0 additions & 2 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,6 @@ flake.* @DataDog/nix-guild @DataDog/apm-common-comp
examples/ffi/ffe.c @DataDog/feature-flagging-and-experimentation-sdk
bin_tests/tests/test_the_tests.rs @DataDog/apm-common-components-core @DataDog/libdatadog-guild-reviewers
bin_tests/src/bin/test_the_tests.rs @DataDog/apm-common-components-core @DataDog/libdatadog-guild-reviewers
tools/cc_utils/ @DataDog/libdatadog-php
tools/sidecar_mockgen/ @DataDog/libdatadog-php
libdd-data-pipeline/src/otlp/ @DataDog/apm-sdk-capabilities @DataDog/apm-common-components-core
libdd-data-pipeline/tests/test_trace_exporter_otlp_export.rs @DataDog/apm-sdk-capabilities @DataDog/apm-common-components-core
Expand Down Expand Up @@ -206,7 +205,6 @@ libdd-ipc-macros/CHANGELOG.md @DataDog/libdatadog-php @DataDog/li
libdd-ipc-macros/Cargo.toml @DataDog/libdatadog-php @DataDog/libdatadog-release
libdd-ipc/CHANGELOG.md @DataDog/libdatadog-php @DataDog/libdatadog-release
libdd-ipc/Cargo.toml @DataDog/libdatadog-php @DataDog/libdatadog-release
tools/cc_utils/Cargo.toml @DataDog/libdatadog-php @DataDog/libdatadog-release
tools/sidecar_mockgen/Cargo.toml @DataDog/libdatadog-php @DataDog/libdatadog-release

datadog-sidecar-ffi/Cargo.toml @DataDog/libdatadog-php @DataDog/libdatadog-release @DataDog/apm-common-components-core-reviewers
Expand Down
32 changes: 16 additions & 16 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ members = [
"libdd-telemetry",
"libdd-telemetry-ffi",
"tools",
"tools/cc_utils",
"tools/sidecar_mockgen",
"spawn_worker",
"tests/spawn_from_lib",
Expand Down Expand Up @@ -77,7 +76,6 @@ ignored = [
"bindgen",
"build_common",
"cc",
"cc_utils",
"cxx-build",
"glibc_version",
"prost-build",
Expand Down
19 changes: 2 additions & 17 deletions libdd-common/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,9 @@ bench = false
anyhow = { workspace = true, optional = true }
arc-swap = { workspace = true, optional = true }
futures = { workspace = true, features = ["alloc", "executor"], optional = true }
futures-util = { workspace = true, optional = true }
hex = { workspace = true, default-features = true, optional = true }
httparse = { workspace = true, features = ["std"], optional = true }
http = { workspace = true, features = ["std"], optional = true }
mime = { workspace = true, optional = true }
multer = { workspace = true, optional = true }
bytes = { workspace = true, features = ["std"], optional = true }
pin-project = { workspace = true, optional = true }
rand = { workspace = true, default-features = true, optional = true }
Expand All @@ -36,7 +33,6 @@ regex-lite = { workspace = true, default-features = true, optional = true }
# Use rustls-no-provider instead of rustls to avoid reqwest forcing aws-lc-rs as the crypto
# backend. We install the ring provider explicitly in connector/mod.rs instead.
reqwest = { workspace = true, features = ["rustls-no-provider", "hickory-dns"], optional = true }
criterion = { workspace = true, optional = true }
rustls-platform-verifier = { workspace = true, optional = true }
thiserror = { workspace = true, default-features = true, optional = true }
serde = { workspace = true, features = ["derive"] }
Expand All @@ -59,7 +55,6 @@ hyper-util = { workspace = true, features = ["http1", "client", "client-legacy"]
http-body = { workspace = true, optional = true }
http-body-util = {workspace = true, optional = true }
tower-service = { workspace = true, optional = true }
cc = { workspace = true, optional = true }
libc = { workspace = true, optional = true }
tokio = { workspace = true, features = ["rt", "rt-multi-thread", "macros", "net", "io-util", "fs", "time"], optional = true }

Expand All @@ -68,8 +63,6 @@ workspace = true
optional = true
features = [
"Win32_Foundation",
"Win32_System_Diagnostics_ToolHelp",
"Win32_System_Performance",
"Win32_System_Registry",
"Win32_System_Threading",
]
Expand All @@ -79,17 +72,15 @@ nix = { workspace = true, features = ["process"], optional = true }

[dev-dependencies]
bytes = { workspace = true, features = ["std"] }
httparse = { workspace = true, features = ["std"] }
indexmap = { workspace = true, default-features = true }
maplit.workspace = true
mime.workspace = true
multer.workspace = true
proptest = { workspace = true, default-features = true }
rand = { workspace = true, default-features = true }
rcgen.workspace = true
tempfile.workspace = true
tokio = { workspace = true, features = ["rt", "macros", "time", "net", "io-util"] }
tokio-rustls.workspace = true
tools = { path = "../tools", default-features = false, features = ["test-utils"] }

[features]
default = ["std", "https"]
Expand All @@ -104,9 +95,7 @@ std = [
"anyhow/std",
"dep:arc-swap",
"dep:bytes",
"dep:cc",
"dep:futures",
"dep:futures-util",
"dep:hex",
"dep:http",
"dep:libc",
Expand Down Expand Up @@ -147,11 +136,7 @@ fips = ["tls-core", "hyper-rustls/fips"]
# Honor HTTP(S)_PROXY/NO_PROXY environment variables for the hyper connector,
hyper-proxy = ["http-client", "hyper-util/client-proxy"]
# Enable reqwest client builder support with file dump debugging
reqwest = ["http-client", "dep:reqwest", "test-utils"]
# Enable test utilities for use in other crates
test-utils = ["std", "dep:httparse", "dep:rand", "dep:mime", "dep:multer"]
# Enable benchmark utilities (ReportingAllocator, Criterion allocation measurement)
bench-utils = ["std", "dep:criterion"]
reqwest = ["http-client", "dep:reqwest", "dep:httparse", "dep:rand"]

[lints.rust]
# We run coverage checks in our github actions. These checks are run with
Expand Down
3 changes: 0 additions & 3 deletions libdd-common/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ Common utilities and foundational components shared across Datadog telemetry lib
- **Entity ID Detection**: Automatic container ID and entity ID detection from cgroups, Docker, Kubernetes, and Azure App Services
- **Tag Management**: Compile-time validated tags with the `tag!` macro
- **URI Parsing**: Special handling for Unix sockets, Windows named pipes, and file URIs
- **Rate Limiting**: Token bucket rate limiter implementation
- **Platform Utilities**: Unix-specific utilities for fork, exec, and process management
- **Datadog Headers**: Standard Datadog HTTP headers and constants
- **Timeout Support**: Configurable timeouts for HTTP requests
Expand All @@ -23,12 +22,10 @@ Common utilities and foundational components shared across Datadog telemetry lib
- `azure_app_services`: Azure App Services integration
- `config`: Configuration utilities
- `connector`: HTTP/HTTPS connector implementations
- `cstr`: C string utilities and macros
- `entity_id`: Container and entity ID detection
- `error`: Common error types
- `header`: Datadog HTTP headers
- `http_common`: Hyper version migration helpers
- `rate_limiter`: Rate limiting implementation
- `tag`: Tag creation and validation
- `timeout`: Timeout utilities
- `unix_utils`: Unix-specific process utilities
Expand Down
Loading
Loading