Skip to content

chore!: remove unused dependencies (v2) - #2511

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 4 commits into
mainfrom
oscarld/remove-all-unused-dependencies-v2
Sep 17, 2026
Merged

gh-worker-dd-mergequeue-cf854d[bot] merged 4 commits into
mainfrom
oscarld/remove-all-unused-dependencies-v2

Conversation

@Eldolfin

@Eldolfin Eldolfin commented Sep 11, 2026 •

Copy link
Copy Markdown
Contributor

What does this PR do?

Removes unused dependencies across the workspace.

This is a v2 of #2319. I ran cargo machete with metadata, then audited every finding to preserve false positives required by build scripts, targets, features, and workspace resolution.

Motivation

  • Hopefully slightly faster compile times and a simpler dependency tree
  • Cleaner repo overall

Additional Notes

The cargo-machete allow list will be added in a follow-up.

  • In libdd-common/Cargo.toml, I'm not sure the removal of tokio-rustls and rustls-native-certs is good. However it didn't seem to have broken tests

How to test the change?

CI should be able to catch if I broke something.

APMSP-3056

[Generated using codex]

@datadog-official

datadog-official Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

Tests

✅ All CI checks and tests passed.

🎉 All green!

🧪 All tests passed
❄️ No new flaky tests detected

🎯 Code Coverage (details)
• Patch Coverage: 100.00%
• Overall Coverage: 77.88% (+0.10%)

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 8dbb937 | Docs | View more details | Give us feedback!

@Eldolfin Eldolfin changed the title chore: remove verified unused dependencies (v2) chore: remove unused dependencies (v2) Sep 11, 2026
@dd-octo-sts

dd-octo-sts Bot commented Sep 11, 2026 •

Copy link
Copy Markdown
Contributor

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 9.02 MB 9.02 MB 0% (0 B) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 96.01 MB 96.02 MB +0% (+7.44 KB) 👌
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 12.19 MB 12.19 MB +0% (+224 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 107.42 MB 107.42 MB +0% (+1.42 KB) 👌
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 29.04 MB 29.04 MB -0% (-2.00 KB) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 96.08 KB 96.08 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 191.77 MB 191.76 MB -0% (-8.00 KB) 👌
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 818.19 MB 818.13 MB -0% (-56.68 KB) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 9.69 MB 9.69 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 96.08 KB 96.08 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 27.51 MB 27.51 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 55.57 MB 55.58 MB +0% (+2.91 KB) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 25.41 MB 25.41 MB +0% (+512 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 97.58 KB 97.58 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 197.08 MB 197.10 MB +0% (+16.00 KB) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 800.48 MB 799.82 MB --.08% (-680.14 KB) 💪
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 7.51 MB 7.51 MB --.01% (-1.00 KB) 💪
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 97.58 KB 97.58 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 29.63 MB 29.63 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 52.55 MB 52.54 MB --.01% (-6.30 KB) 💪
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 85.97 MB 85.97 MB -0% (-2.46 KB) 👌
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 10.03 MB 10.03 MB 0% (0 B) 👌
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 101.85 MB 101.85 MB +0% (+1.53 KB) 👌
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 12.25 MB 12.25 MB -0% (-48 B) 👌

@pr-commenter

pr-commenter Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

Benchmarks

Comparison

Benchmark execution time: 2026-09-14 13:51:24

Comparing candidate commit 8dbb937 in PR branch oscarld/remove-all-unused-dependencies-v2 with baseline commit e0a0134 in branch main.

📊 Benchmarking dashboard

Found 9 performance improvements and 2 performance regressions! Performance is the same for 165 metrics, 0 unstable metrics.

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

scenario:vec_map/as_deduped_map/already_deduped/16

  • 🟥 execution_time [+1.216ns; +1.257ns] or [+5.037%; +5.207%]

scenario:vec_map/as_deduped_map/already_deduped/8

  • 🟥 execution_time [+1.209ns; +1.220ns] or [+8.344%; +8.422%]

scenario:vec_map/contains_key/128

  • 🟩 execution_time [-755.575ns; -743.259ns] or [-4.794%; -4.716%]
  • 🟩 throughput [+402121.095op/s; +408820.204op/s] or [+4.951%; +5.034%]

scenario:vec_map/contains_key/16

  • 🟩 execution_time [-22.508ns; -22.157ns] or [-8.849%; -8.710%]
  • 🟩 throughput [+6006826.332op/s; +6099983.565op/s] or [+9.550%; +9.698%]

scenario:vec_map/contains_key/64

  • 🟩 execution_time [-259.098ns; -253.586ns] or [-6.166%; -6.035%]
  • 🟩 throughput [+978975.959op/s; +999771.302op/s] or [+6.428%; +6.564%]

scenario:vec_map/contains_key/8

  • 🟩 execution_time [-3.902ns; -3.730ns] or [-5.228%; -4.997%]
  • 🟩 throughput [+5646452.225op/s; +5907272.953op/s] or [+5.268%; +5.511%]

scenario:vec_map/get_miss/8

  • 🟩 execution_time [-1.806ns; -1.735ns] or [-24.023%; -23.075%]

Benchmark execution time: 2026-09-14 13:46:04

Comparing candidate commit 8dbb937 in PR branch oscarld/remove-all-unused-dependencies-v2 with baseline commit e0a0134 in branch main.

📊 Benchmarking dashboard

Found 3 performance improvements and 8 performance regressions! Performance is the same for 155 metrics, 10 unstable metrics.

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

scenario:glob_matcher/ascii_case_insensitive_match/wall_time

  • 🟥 execution_time [+1.257ns; +1.323ns] or [+4.598%; +4.840%]

scenario:glob_matcher/ascii_exact_match/wall_time

  • 🟥 execution_time [+1.254ns; +1.337ns] or [+4.587%; +4.888%]

scenario:glob_matcher/ascii_exact_miss/wall_time

  • 🟥 execution_time [+2.237ns; +2.255ns] or [+19.163%; +19.310%]

scenario:glob_matcher/ascii_pattern_unicode_subject/wall_time

  • 🟩 execution_time [-6.782ns; -6.701ns] or [-4.747%; -4.691%]

scenario:glob_matcher/ascii_wildcard_backtrack_match/wall_time

  • 🟥 execution_time [+9.308ns; +9.326ns] or [+24.895%; +24.943%]

scenario:glob_matcher/ascii_wildcard_heavy_backtrack/wall_time

  • 🟥 execution_time [+12.634ns; +12.672ns] or [+30.860%; +30.953%]

scenario:glob_matcher/ascii_wildcard_question_match/wall_time

  • 🟥 execution_time [+13.755ns; +13.780ns] or [+37.246%; +37.316%]

scenario:glob_matcher/ascii_wildcard_star_match/wall_time

  • 🟥 execution_time [+9.878ns; +9.898ns] or [+26.747%; +26.801%]

scenario:glob_matcher/star_short_circuit/wall_time

  • 🟩 execution_time [-0.642ns; -0.630ns] or [-13.317%; -13.070%]

scenario:glob_matcher/unicode_pattern_wildcard_match/wall_time

  • 🟩 execution_time [-6.380ns; -6.315ns] or [-4.917%; -4.867%]

scenario:profiler_attached/slow_path_system/4096

  • 🟥 execution_time [+10.796ns; +10.944ns] or [+7.405%; +7.507%]

Unstable benchmarks

These benchmarks have a confidence interval too wide to call a change; treat them as noise rather than signal.

scenario:datadog_sample_span/parent_not_sampled_short_circuit/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+559.044%; -557.295%]

scenario:datadog_sample_span/parent_sampled_short_circuit/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+556.316%; -556.009%]

scenario:glob_matcher/ascii_case_insensitive_match/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+496.697%; -528.985%]

scenario:glob_matcher/ascii_exact_match/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+570.576%; -562.775%]

scenario:glob_matcher/ascii_exact_miss/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+610.830%; -582.363%]

scenario:glob_matcher/ascii_wildcard_backtrack_match/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+566.150%; -560.664%]

scenario:glob_matcher/ascii_wildcard_heavy_backtrack/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+559.176%; -557.357%]

scenario:glob_matcher/ascii_wildcard_question_match/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+555.735%; -555.735%]

scenario:glob_matcher/ascii_wildcard_star_match/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+548.083%; -552.148%]

scenario:glob_matcher/star_short_circuit/allocated_bytes

  • unstable execution_time [-0.000ns; +0.000ns] or [+523.076%; -540.659%]

Candidate

Omitted due to size.

Baseline

Omitted due to size.

uuid already enables getrandom/js for telemetry and data pipeline. Forward Ring's WASM support through libdd-tuf in remote config.
@Eldolfin Eldolfin changed the title chore: remove unused dependencies (v2) chore!: remove unused dependencies (v2) Sep 11, 2026
rustls-platform-verifier uses rustls-native-certs transitively. Keep the\ndirect dependency below 0.8.3 to avoid openssl-probe 0.2 certificate\ndirectory scanning.
@Eldolfin
Eldolfin marked this pull request as ready for review September 11, 2026 15:02
@Eldolfin
Eldolfin requested review from a team as code owners September 11, 2026 15:02
@Eldolfin
Eldolfin requested review from leoromanovsky, pavlokhrebto and vpellan and removed request for a team September 11, 2026 15:02
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-11T15:06:01.831749Z f0bca2c Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@datadog-official datadog-official Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Datadog Autotest: PASS

More details

The removed dependencies have no remaining direct, build, target, or feature use. The lockfile and license changes agree with the manifest changes.

Was this helpful? React 👍 or 👎

Open Bits AI session

🤖 Datadog Autotest · Commit f0bca2c · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest

@Eldolfin
Eldolfin added this pull request to stack #2518 September 14, 2026 09:26
@gh-worker-dd-mergequeue-cf854d
gh-worker-dd-mergequeue-cf854d Bot merged commit 308e5c2 into main Sep 17, 2026
101 checks passed
@gh-worker-dd-mergequeue-cf854d
gh-worker-dd-mergequeue-cf854d Bot deleted the oscarld/remove-all-unused-dependencies-v2 branch September 17, 2026 16:13

@danielsn danielsn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Can we add a CI job to ensure we keep this up to date?

@Eldolfin

Copy link
Copy Markdown
Contributor Author

Can we add a CI job to ensure we keep this up to date?

Yes, this is coming in a stacked PR I'm merging now

gh-worker-dd-mergequeue-cf854d Bot pushed a commit that referenced this pull request Sep 18, 2026
# What does this PR do?

Runs cargo-machete in CI and records the audited false positives in each package manifest.

This PR is stacked on #2511.

# Motivation

Prevent unused dependencies from being added without removing dependencies required by build scripts, targets, or feature resolution. [APMSP-3056]

# How to test the change?

CI should pass the cargo machete check.

[APMSP-3056]: https://datadoghq.atlassian.net/browse/APMSP-3056

[Generated using codex]

Co-authored-by: oscar.ledauphin <oscar.ledauphin@datadoghq.com>
paullegranddc added a commit that referenced this pull request Sep 24, 2026
…ibdd-data-pipeline, libdd-li... (#2571)

<!-- release-proposal-inputs: {"crates":"libdd-capabilities-impl,
libdd-common, libdd-data-pipeline, libdd-library-config,
libdd-profiling-heap-allocator, libdd-remote-config, libdd-sampling,
libdd-shared-runtime, libdd-telemetry, libdd-tinybytes,
libdd-trace-utils","main_start_ref":"","level_overrides":"","bypass_standard_checks":false}
-->

# Release proposal for libdd-capabilities-impl, libdd-common,
libdd-data-pipeline, libdd-library-config,
libdd-profiling-heap-allocator, libdd-remote-config, libdd-sampling,
libdd-shared-runtime, libdd-telemetry, libdd-tinybytes,
libdd-trace-utils and their dependencies

This PR contains version bumps based on public API changes and commits
since last release.


### ⚠️ Crates left out of this proposal affected by its major
bumps

These publishable workspace crates are not part of this release but
their dependency requirement was rewritten on this branch while their
published version still requires the old major. If they are a dependency
on your deployment not including them in the release could result in
duplicate packages or symbol incompatibility.

- `libdd-capabilities` `3.0.1` → `4.0.0` affects: `libdd-crashtracker`,
`libdd-ffe`, `libdd-live-debugger`
- `libdd-capabilities-impl` `5.0.0` → `6.0.0` affects:
`libdd-crashtracker`, `libdd-live-debugger`, `libdd-tracer-flare`
- `libdd-common` `6.0.0` → `7.0.0` affects: `libdd-crashtracker`,
`libdd-ffe`, `libdd-http-client`, `libdd-ipc`, `libdd-live-debugger`,
`libdd-profiling`, `libdd-tracer-flare`
- `libdd-data-pipeline` `10.0.0` → `11.0.0` affects:
`libdd-live-debugger`
- `libdd-remote-config` `5.0.0` → `6.0.0` affects: `libdd-ffe`,
`libdd-live-debugger`, `libdd-tracer-flare`
- `libdd-telemetry` `8.0.0` → `9.0.0` affects: `libdd-crashtracker`
- `libdd-trace-stats` `9.0.0` → `10.0.0` affects: `libdd-ipc`
- `libdd-trace-utils` `12.0.0` → `13.0.0` affects: `libdd-tracer-flare`

## libdd-capabilities
**Next version:** `4.0.0`
**Semver bump:** `major`
**Tag:** `libdd-capabilities-v4.0.0`

### Commits

- feat(trace-exporter)!: add API to force flush stats on the trace
exporter (#2538)
- refactor!: apply small timeout pooling strategy to libdd-http-client
as well (#2449)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)

## libdd-common
**Next version:** `7.0.0`
**Semver bump:** `major`
**Tag:** `libdd-common-v7.0.0`

### Commits

- build: enforce workspace-level dependency declarations (#2514)
- chore!: remove unused dependencies (v2) (#2511)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- chore(libdd-data-pipeline): solve cargo deny [APMSP-3884] (#2318)
- fix!: benchmark was doing many samples for deterministic heap usage
(#2465)

## libdd-ddsketch
**Next version:** `1.1.2`
**Semver bump:** `patch`
**Tag:** `libdd-ddsketch-v1.1.2`

### Commits

- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- chore(libdd-data-pipeline): solve cargo deny [APMSP-3884] (#2318)

## libdd-profiling-heap-sampler
**Next version:** `1.1.0`
**Semver bump:** `minor`
**Tag:** `libdd-profiling-heap-sampler-v1.1.0`

### Commits

- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- refactor: migrate to workspace dependencies, phase 4 (#2296)
- feat(profiling): add USDT semaphores to skip slow path around heap
profile sampler (#2266)

## libdd-tinybytes
**Next version:** `1.1.4`
**Semver bump:** `patch`
**Tag:** `libdd-tinybytes-v1.1.4`

### Commits

- chore: move all remaining external deps to workspace-level
dependencies (#2476)

## libdd-trace-protobuf
**Next version:** `5.0.1`
**Semver bump:** `patch`
**Tag:** `libdd-trace-protobuf-v5.0.1`

### Commits

- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- fix(build): build script change detection (#2467)

## libdd-capabilities-impl
**Next version:** `6.0.0`
**Semver bump:** `major`
**Tag:** `libdd-capabilities-impl-v6.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0

### Commits

- refactor!: apply small timeout pooling strategy to libdd-http-client
as well (#2449)
- fix(sidecar)!: stabilize the sidecar for macos usage (#2475)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)

## libdd-profiling-heap-allocator
**Next version:** `1.1.0`
**Semver bump:** `minor`
**Tag:** `libdd-profiling-heap-allocator-v1.1.0`

### Commits

- refactor(benchmarks): measure allocator thread CPU time (#2500)
- refactor: migrate to workspace dependencies, phase 4 (#2296)
- feat(profiling): add USDT semaphores to skip slow path around heap
profile sampler (#2266)

## libdd-library-config
**Next version:** `4.1.0`
**Semver bump:** `minor`
**Tag:** `libdd-library-config-v4.1.0`

### Commits

- chore!: remove unused dependencies (v2) (#2511)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)

## libdd-trace-normalization
**Next version:** `4.1.0`
**Semver bump:** `minor`
**Tag:** `libdd-trace-normalization-v4.1.0`

### Commits

- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- chore(libdd-data-pipeline): solve cargo deny [APMSP-3884] (#2318)

## libdd-remote-config
**Next version:** `6.0.0`
**Semver bump:** `major`
**Tag:** `libdd-remote-config-v6.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-capabilities-impl`: ^5.0.0 → ^6.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0

### Commits

- refactor!: apply small timeout pooling strategy to libdd-http-client
as well (#2449)
- chore!: remove unused dependencies (v2) (#2511)
- fix(rem-cfg)!: remove AsmRawResponseBody (#2540)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)

## libdd-shared-runtime
**Next version:** `5.0.0`
**Semver bump:** `major`
**Tag:** `libdd-shared-runtime-v5.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-capabilities-impl`: ^5.0.0 → ^6.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0

### Commits

- feat(trace-exporter)!: add API to force flush stats on the trace
exporter (#2538)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)

## libdd-trace-utils
**Next version:** `13.0.0`
**Semver bump:** `major`
**Tag:** `libdd-trace-utils-v13.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-capabilities-impl`: ^5.0.0 → ^6.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0

### Commits

- fix(trace-utils)!: add forgotten css to agentless v1 encoder (#2557)
- fix(otlp): use potential dedupe in otlp serialization path (#2531)
- feat(trace-utils)!: add v1-native OTLP encoder brick (#2369)
- perf(serialization): bench the actual path used by the trace exporter
(#2512)
- perf(trace): write agentless JSON directly (#2454)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- perf(trace): encode agentless IDs without formatting (#2452)
- perf(trace-utils)!: use pooled spans on the send path (#2382)
- feat(data-pipeline)!: OTLP gRPC trace export (#2171)
- chore(libdd-data-pipeline): solve cargo deny [APMSP-3884] (#2318)
- fix!: benchmark was doing many samples for deterministic heap usage
(#2465)

## libdd-dogstatsd-client
**Next version:** `7.0.0`
**Semver bump:** `major`
**Tag:** `libdd-dogstatsd-client-v7.0.0`

### ⚠️ major bump forced due to:

- `libdd-common`: ^6.0.0 → ^7.0.0
- `libdd-shared-runtime`: ^4.0.0 → ^5.0.0

### Commits

- chore: move all remaining external deps to workspace-level
dependencies (#2476)

## libdd-telemetry
**Next version:** `9.0.0`
**Semver bump:** `major`
**Tag:** `libdd-telemetry-v9.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0
- `libdd-shared-runtime`: ^4.0.0 → ^5.0.0

### Commits

- refactor!: apply small timeout pooling strategy to libdd-http-client
as well (#2449)
- chore!: remove unused dependencies (v2) (#2511)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- fix(telemetry): fall back to the proper intake telemetry domain when
direct submission is enabled (#2484)

## libdd-sampling
**Next version:** `7.0.0`
**Semver bump:** `major`
**Tag:** `libdd-sampling-v7.0.0`

### ⚠️ major bump forced due to:

- `libdd-common`: ^5.2.0 → ^7.0.0
- `libdd-trace-utils`: ^10.1.0 → ^13.0.0

### Commits

- chore(benchmarks): remove batched-loop sampling noise (#2498)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- fix!: benchmark was doing many samples for deterministic heap usage
(#2465)
- feat(trace-utils)!: add from owned to SpanText (#2403)
- test(sampling): make rate_limiter thread-safety test deterministic
(#2354)

## libdd-trace-obfuscation
**Next version:** `9.0.0`
**Semver bump:** `major`
**Tag:** `libdd-trace-obfuscation-v9.0.0`

### ⚠️ major bump forced due to:

- `libdd-common`: ^6.0.0 → ^7.0.0
- `libdd-trace-utils`: ^12.0.0 → ^13.0.0

### Commits

- feat(data-pipeline)!: refactor agent's /info obfuscation config format
(#2490)
- fix(obfuscation): keep URLs whose path or fragment holds a bracket
(#2527)
- fix(obfuscation): stop forcing serde_json/preserve_order on dependents
(#2529)
- fix(obfuscation): prevent crash and cap recursion in SQL/HTTP
obfuscation (#2441)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- fix(data-pipeline-ffi): harden agentless config setters and parse
obfuscation config once (#2474)

## libdd-trace-stats
**Next version:** `10.0.0`
**Semver bump:** `major`
**Tag:** `libdd-trace-stats-v10.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-capabilities-impl`: ^5.0.0 → ^6.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0
- `libdd-shared-runtime`: ^4.0.0 → ^5.0.0
- `libdd-trace-obfuscation`: ^8.0.0 → ^9.0.0
- `libdd-trace-utils`: ^12.0.0 → ^13.0.0

### Commits

- feat(trace-exporter)!: add API to force flush stats on the trace
exporter (#2538)
- fix(trace-stats): cardinality limit telemetry name (#2559)
- feat(data-pipeline)!: refactor agent's /info obfuscation config format
(#2490)
- chore!: remove unused dependencies (v2) (#2511)
- feat(data-pipeline)!: generate agentless trace stats (#2488)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- chore(libdd-data-pipeline): solve cargo deny [APMSP-3884] (#2318)

## libdd-data-pipeline-core
**Next version:** `2.0.0`
**Semver bump:** `major`
**Tag:** `libdd-data-pipeline-core-v2.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0
- `libdd-trace-obfuscation`: ^8.0.0 → ^9.0.0
- `libdd-trace-utils`: ^12.0.0 → ^13.0.0

### Commits

- refactor!: apply small timeout pooling strategy to libdd-http-client
as well (#2449)
- feat(data-pipeline)!: generate agentless trace stats (#2488)
- perf(data-pipeline): avoid parsing static entity header names (#2457)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- perf(trace-utils)!: use pooled spans on the send path (#2382)

## libdd-data-pipeline
**Next version:** `11.0.0`
**Semver bump:** `major`
**Tag:** `libdd-data-pipeline-v11.0.0`

### ⚠️ major bump forced due to:

- `libdd-capabilities`: ^3.0.1 → ^4.0.0
- `libdd-capabilities-impl`: ^5.0.0 → ^6.0.0
- `libdd-common`: ^6.0.0 → ^7.0.0
- `libdd-data-pipeline-core`: ^1.0.0 → ^2.0.0
- `libdd-shared-runtime`: ^4.0.0 → ^5.0.0
- `libdd-trace-obfuscation`: ^8.0.0 → ^9.0.0
- `libdd-trace-stats`: ^9.0.0 → ^10.0.0
- `libdd-trace-utils`: ^12.0.0 → ^13.0.0

### Commits

- feat(trace-exporter)!: add API to force flush stats on the trace
exporter (#2538)
- refactor!: apply small timeout pooling strategy to libdd-http-client
as well (#2449)
- feat(data-pipeline)!: refactor agent's /info obfuscation config format
(#2490)
- test(data-pipeline): stop OTLP gRPC post-connect test from hanging
(#2549)
- chore!: remove unused dependencies (v2) (#2511)
- feat(data-pipeline)!: generate agentless trace stats (#2488)
- fix(otlp): use potential dedupe in otlp serialization path (#2531)
- refactor(benchmarks): isolate enqueue timing in data-pipeline (#2499)
- perf(trace): write agentless JSON directly (#2454)
- test(data-pipeline): fix flaky OTLP gRPC exporter integration tests
(#2505)
- chore: move all remaining external deps to workspace-level
dependencies (#2476)
- perf(trace-utils)!: use pooled spans on the send path (#2382)
- feat(data-pipeline)!: OTLP gRPC trace export (#2171)
- chore(libdd-data-pipeline): solve cargo deny [APMSP-3884] (#2318)


[APMSP-3884]:
https://datadoghq.atlassian.net/browse/APMSP-3884?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: paullegranddc <82819397+paullegranddc@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants