Skip to content

feat(heap-profiling): make heap crates publishable#2236

Open
maxywb wants to merge 3 commits into
mainfrom
max.beckett/publish-heap-profiling-crates
Open

feat(heap-profiling): make heap crates publishable#2236
maxywb wants to merge 3 commits into
mainfrom
max.beckett/publish-heap-profiling-crates

Conversation

@maxywb

@maxywb maxywb commented Jul 14, 2026

Copy link
Copy Markdown

Status

Superseded for now by dd-source consuming the allocator from a pinned libdatadog Git revision, with the required dd-source policy exception and Bazel submodule configuration. Keeping this draft open for the Profiling team to decide whether these crates should nevertheless become publishable/released.

Proposed changes

  • remove publish = false from libdd-profiling-heap-sampler and libdd-profiling-heap-allocator
  • add the sampler version requirement to the allocator’s path dependency, as required for published libdd-* dependencies

The sampler must publish before the allocator.

Validation

  • ./scripts/check_cargo_metadata.sh libdd-profiling-heap-sampler libdd-profiling-heap-allocator
  • cargo +nightly-2026-02-08 fmt --all -- --check
  • cargo check -p libdd-profiling-heap-sampler -p libdd-profiling-heap-allocator
  • cargo package -p libdd-profiling-heap-sampler --allow-dirty

@maxywb maxywb changed the title chore(heap-profiling): make heap crates publishable make heap crates publishable Jul 14, 2026
@github-actions

github-actions Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

📚 Documentation Check Results

⚠️ 135 documentation warning(s) found

📦 libdd-profiling-heap-allocator - 45 warning(s)

📦 libdd-profiling-heap-gotter - 45 warning(s)

📦 libdd-profiling-heap-sampler - 45 warning(s)


Updated: 2026-07-15 10:49:50 UTC | Commit: bee55c9 | missing-docs job results

@github-actions

github-actions Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

🔒 Cargo Deny Results

⚠️ 1 issue(s) found, showing only errors (advisories, bans, sources)

📦 libdd-profiling-heap-allocator - 1 error(s)

Show output
error[vulnerability]: Invalid pointer dereference in `fmt::Pointer` impl for `Atomic` and `Shared` when the underlying pointer is invalid
   ┌─ /home/runner/work/libdatadog/libdatadog/Cargo.lock:21:1
   │
21 │ crossbeam-epoch 0.9.18 registry+https://github.com/rust-lang/crates.io-index
   │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ security vulnerability detected
   │
   ├ ID: RUSTSEC-2026-0204
   ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2026-0204
   ├ Affected versions of `fmt::Display` dereference the underlying pointer. This causes a invalid pointer dereference e.g., when a pointer created with `Atomic::null` or `Shared::null`. `fmt::Debug` impls and pre-0.9 `fmt::Display` impls, which do not dereference pointers, are not affected by this issue.
   ├ Announcement: https://github.com/crossbeam-rs/crossbeam/pull/1276
   ├ Solution: Upgrade to >=0.9.20 (try `cargo update -p crossbeam-epoch`)
   ├ crossbeam-epoch v0.9.18
     └── crossbeam-deque v0.8.5
         └── rayon-core v1.12.1
             └── rayon v1.10.0
                 └── criterion v0.5.1
                     └── (dev) libdd-profiling-heap-allocator v0.1.0

advisories FAILED, bans ok, sources ok

📦 libdd-profiling-heap-gotter - ✅ No issues

📦 libdd-profiling-heap-sampler - ✅ No issues


Updated: 2026-07-15 10:51:38 UTC | Commit: bee55c9 | dependency-check job results

@datadog-official

datadog-official Bot commented Jul 14, 2026

Copy link
Copy Markdown

Tests

🎉 All green!

🧪 All tests passed
❄️ No new flaky tests detected

🎯 Code Coverage (details)
Patch Coverage: 100.00%
Overall Coverage: 74.45% (+0.02%)

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: b12ba30 | Docs | Datadog PR Page | Give us feedback!

@pr-commenter

pr-commenter Bot commented Jul 14, 2026

Copy link
Copy Markdown

Benchmarks

Comparison

Benchmark execution time: 2026-07-15 11:02:33

Comparing candidate commit b12ba30 in PR branch max.beckett/publish-heap-profiling-crates with baseline commit a10f667 in branch main.

Found 2 performance improvements and 1 performance regressions! Performance is the same for 37 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:alloc_free/sampled_system_fast_path/4096

  • 🟩 execution_time [-12.780ns; -12.591ns] or [-10.979%; -10.816%]

scenario:alloc_free/sampled_system_slow_path/4096

  • 🟥 execution_time [+11.477ns; +11.605ns] or [+7.385%; +7.467%]

scenario:alloc_free/system/4096

  • 🟩 execution_time [-13.157ns; -12.996ns] or [-12.387%; -12.235%]

Candidate

Candidate benchmark details

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_noop_fast_path/16 execution_time 14.401ns 14.471ns ± 0.016ns 14.470ns ± 0.004ns 14.474ns 14.489ns 14.520ns 14.606ns 0.94% 3.731 31.656 0.11% 0.001ns 1 200
alloc_free/sampled_noop_fast_path/256 execution_time 14.401ns 14.469ns ± 0.012ns 14.469ns ± 0.004ns 14.474ns 14.486ns 14.500ns 14.536ns 0.47% -0.331 14.061 0.08% 0.001ns 1 200
alloc_free/sampled_noop_fast_path/4096 execution_time 14.405ns 14.478ns ± 0.083ns 14.471ns ± 0.005ns 14.477ns 14.491ns 14.500ns 15.640ns 8.07% 13.659 188.061 0.57% 0.006ns 1 200
alloc_free/sampled_noop_fast_path/64 execution_time 14.401ns 14.472ns ± 0.022ns 14.470ns ± 0.006ns 14.476ns 14.488ns 14.509ns 14.725ns 1.76% 7.963 92.897 0.15% 0.002ns 1 200
alloc_free/sampled_noop_fast_path/65536 execution_time 14.403ns 14.470ns ± 0.011ns 14.470ns ± 0.005ns 14.475ns 14.484ns 14.507ns 14.531ns 0.43% 0.160 11.288 0.08% 0.001ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_noop_fast_path/16 execution_time [14.469ns; 14.473ns] or [-0.015%; +0.015%] None None None
alloc_free/sampled_noop_fast_path/256 execution_time [14.468ns; 14.471ns] or [-0.012%; +0.012%] None None None
alloc_free/sampled_noop_fast_path/4096 execution_time [14.466ns; 14.490ns] or [-0.080%; +0.080%] None None None
alloc_free/sampled_noop_fast_path/64 execution_time [14.469ns; 14.475ns] or [-0.021%; +0.021%] None None None
alloc_free/sampled_noop_fast_path/65536 execution_time [14.468ns; 14.471ns] or [-0.011%; +0.011%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_system_slow_path/16 execution_time 89.186ns 89.681ns ± 0.084ns 89.675ns ± 0.033ns 89.712ns 89.814ns 89.904ns 89.999ns 0.36% -1.063 11.963 0.09% 0.006ns 1 200
alloc_free/sampled_system_slow_path/256 execution_time 89.343ns 89.615ns ± 0.442ns 89.578ns ± 0.029ns 89.605ns 89.698ns 89.918ns 95.688ns 6.82% 13.123 177.334 0.49% 0.031ns 1 200
alloc_free/sampled_system_slow_path/4096 execution_time 166.048ns 166.959ns ± 0.269ns 166.949ns ± 0.132ns 167.090ns 167.337ns 167.583ns 168.313ns 0.82% 0.749 6.276 0.16% 0.019ns 1 200
alloc_free/sampled_system_slow_path/64 execution_time 88.974ns 89.623ns ± 0.095ns 89.613ns ± 0.033ns 89.654ns 89.756ns 89.890ns 90.174ns 0.63% -0.153 16.520 0.11% 0.007ns 1 200
alloc_free/sampled_system_slow_path/65536 execution_time 154.239ns 155.768ns ± 0.259ns 155.775ns ± 0.114ns 155.887ns 156.144ns 156.413ns 156.910ns 0.73% -1.054 8.775 0.17% 0.018ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_system_slow_path/16 execution_time [89.669ns; 89.693ns] or [-0.013%; +0.013%] None None None
alloc_free/sampled_system_slow_path/256 execution_time [89.554ns; 89.677ns] or [-0.068%; +0.068%] None None None
alloc_free/sampled_system_slow_path/4096 execution_time [166.922ns; 166.997ns] or [-0.022%; +0.022%] None None None
alloc_free/sampled_system_slow_path/64 execution_time [89.610ns; 89.636ns] or [-0.015%; +0.015%] None None None
alloc_free/sampled_system_slow_path/65536 execution_time [155.732ns; 155.804ns] or [-0.023%; +0.023%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_system_fast_path/16 execution_time 25.954ns 26.216ns ± 0.077ns 26.216ns ± 0.040ns 26.256ns 26.328ns 26.518ns 26.584ns 1.40% 0.747 4.400 0.29% 0.005ns 1 200
alloc_free/sampled_system_fast_path/256 execution_time 25.939ns 26.212ns ± 0.065ns 26.212ns ± 0.034ns 26.250ns 26.312ns 26.358ns 26.504ns 1.11% -0.050 3.650 0.25% 0.005ns 1 200
alloc_free/sampled_system_fast_path/4096 execution_time 100.755ns 103.717ns ± 0.535ns 103.755ns ± 0.228ns 103.970ns 104.315ns 105.232ns 106.330ns 2.48% -0.705 8.162 0.51% 0.038ns 1 200
alloc_free/sampled_system_fast_path/64 execution_time 26.046ns 26.223ns ± 0.101ns 26.214ns ± 0.035ns 26.250ns 26.330ns 26.442ns 27.013ns 3.05% 4.842 35.842 0.38% 0.007ns 1 200
alloc_free/sampled_system_fast_path/65536 execution_time 97.062ns 100.021ns ± 0.420ns 100.040ns ± 0.181ns 100.193ns 100.572ns 101.512ns 101.856ns 1.82% -1.033 15.107 0.42% 0.030ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_system_fast_path/16 execution_time [26.205ns; 26.226ns] or [-0.041%; +0.041%] None None None
alloc_free/sampled_system_fast_path/256 execution_time [26.203ns; 26.221ns] or [-0.034%; +0.034%] None None None
alloc_free/sampled_system_fast_path/4096 execution_time [103.643ns; 103.792ns] or [-0.072%; +0.072%] None None None
alloc_free/sampled_system_fast_path/64 execution_time [26.209ns; 26.237ns] or [-0.053%; +0.053%] None None None
alloc_free/sampled_system_fast_path/65536 execution_time [99.963ns; 100.079ns] or [-0.058%; +0.058%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/system/16 execution_time 14.005ns 14.289ns ± 0.118ns 14.277ns ± 0.043ns 14.330ns 14.434ns 14.559ns 15.188ns 6.38% 3.568 24.671 0.83% 0.008ns 1 200
alloc_free/system/256 execution_time 14.059ns 14.314ns ± 0.091ns 14.305ns ± 0.043ns 14.346ns 14.456ns 14.646ns 14.816ns 3.58% 1.713 6.394 0.64% 0.006ns 1 200
alloc_free/system/4096 execution_time 91.627ns 93.138ns ± 0.453ns 93.124ns ± 0.256ns 93.354ns 93.900ns 94.404ns 94.670ns 1.66% 0.297 1.455 0.49% 0.032ns 1 200
alloc_free/system/64 execution_time 14.002ns 14.312ns ± 0.103ns 14.303ns ± 0.059ns 14.369ns 14.465ns 14.595ns 14.900ns 4.17% 1.070 5.506 0.72% 0.007ns 1 200
alloc_free/system/65536 execution_time 87.213ns 88.408ns ± 0.223ns 88.410ns ± 0.114ns 88.535ns 88.697ns 89.051ns 89.160ns 0.85% -0.864 6.105 0.25% 0.016ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/system/16 execution_time [14.272ns; 14.305ns] or [-0.115%; +0.115%] None None None
alloc_free/system/256 execution_time [14.301ns; 14.326ns] or [-0.089%; +0.089%] None None None
alloc_free/system/4096 execution_time [93.075ns; 93.201ns] or [-0.067%; +0.067%] None None None
alloc_free/system/64 execution_time [14.298ns; 14.326ns] or [-0.100%; +0.100%] None None None
alloc_free/system/65536 execution_time [88.377ns; 88.439ns] or [-0.035%; +0.035%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_noop_slow_path/16 execution_time 63.582ns 63.788ns ± 0.102ns 63.782ns ± 0.025ns 63.807ns 63.871ns 63.960ns 64.969ns 1.86% 7.806 88.397 0.16% 0.007ns 1 200
alloc_free/sampled_noop_slow_path/256 execution_time 63.727ns 63.916ns ± 0.056ns 63.916ns ± 0.021ns 63.941ns 63.974ns 64.107ns 64.273ns 0.56% 1.554 10.910 0.09% 0.004ns 1 200
alloc_free/sampled_noop_slow_path/4096 execution_time 64.166ns 64.445ns ± 0.058ns 64.445ns ± 0.025ns 64.470ns 64.521ns 64.649ns 64.736ns 0.45% 0.137 6.670 0.09% 0.004ns 1 200
alloc_free/sampled_noop_slow_path/64 execution_time 63.643ns 64.063ns ± 0.075ns 64.062ns ± 0.020ns 64.082ns 64.138ns 64.215ns 64.755ns 1.08% 2.810 39.587 0.12% 0.005ns 1 200
alloc_free/sampled_noop_slow_path/65536 execution_time 68.120ns 68.642ns ± 0.080ns 68.646ns ± 0.027ns 68.672ns 68.729ns 68.932ns 68.972ns 0.47% -0.998 11.991 0.12% 0.006ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_noop_slow_path/16 execution_time [63.774ns; 63.802ns] or [-0.022%; +0.022%] None None None
alloc_free/sampled_noop_slow_path/256 execution_time [63.909ns; 63.924ns] or [-0.012%; +0.012%] None None None
alloc_free/sampled_noop_slow_path/4096 execution_time [64.437ns; 64.453ns] or [-0.012%; +0.012%] None None None
alloc_free/sampled_noop_slow_path/64 execution_time [64.053ns; 64.073ns] or [-0.016%; +0.016%] None None None
alloc_free/sampled_noop_slow_path/65536 execution_time [68.631ns; 68.653ns] or [-0.016%; +0.016%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/noop/16 execution_time 0.400ns 0.402ns ± 0.001ns 0.402ns ± 0.000ns 0.402ns 0.403ns 0.403ns 0.408ns 1.42% 6.328 67.924 0.13% 0.000ns 1 200
alloc_free/noop/256 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.402ns 0.403ns 0.404ns 0.45% -0.705 10.285 0.09% 0.000ns 1 200
alloc_free/noop/4096 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.402ns 0.403ns 0.404ns 0.58% 0.559 12.998 0.09% 0.000ns 1 200
alloc_free/noop/64 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.403ns 0.404ns 0.405ns 0.83% 2.540 22.353 0.10% 0.000ns 1 200
alloc_free/noop/65536 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.403ns 0.403ns 0.405ns 0.77% 1.504 16.472 0.11% 0.000ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/noop/16 execution_time [0.402ns; 0.402ns] or [-0.018%; +0.018%] None None None
alloc_free/noop/256 execution_time [0.402ns; 0.402ns] or [-0.012%; +0.012%] None None None
alloc_free/noop/4096 execution_time [0.402ns; 0.402ns] or [-0.013%; +0.013%] None None None
alloc_free/noop/64 execution_time [0.402ns; 0.402ns] or [-0.014%; +0.014%] None None None
alloc_free/noop/65536 execution_time [0.402ns; 0.402ns] or [-0.015%; +0.015%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sampler_only/slow_path/16 execution_time 61.829ns 62.142ns ± 0.070ns 62.136ns ± 0.022ns 62.162ns 62.229ns 62.411ns 62.611ns 0.76% 1.695 15.023 0.11% 0.005ns 1 200
sampler_only/slow_path/256 execution_time 61.945ns 62.287ns ± 0.065ns 62.286ns ± 0.020ns 62.306ns 62.361ns 62.456ns 62.801ns 0.83% 1.363 24.222 0.10% 0.005ns 1 200
sampler_only/slow_path/4096 execution_time 62.220ns 62.485ns ± 0.063ns 62.482ns ± 0.022ns 62.504ns 62.570ns 62.632ns 62.855ns 0.60% 1.171 12.278 0.10% 0.004ns 1 200
sampler_only/slow_path/64 execution_time 61.778ns 62.089ns ± 0.054ns 62.087ns ± 0.019ns 62.109ns 62.159ns 62.258ns 62.288ns 0.32% -1.170 10.327 0.09% 0.004ns 1 200
sampler_only/slow_path/65536 execution_time 66.434ns 66.674ns ± 0.077ns 66.668ns ± 0.029ns 66.702ns 66.780ns 66.869ns 67.173ns 0.76% 2.250 14.013 0.12% 0.005ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sampler_only/slow_path/16 execution_time [62.132ns; 62.152ns] or [-0.016%; +0.016%] None None None
sampler_only/slow_path/256 execution_time [62.278ns; 62.296ns] or [-0.015%; +0.015%] None None None
sampler_only/slow_path/4096 execution_time [62.476ns; 62.493ns] or [-0.014%; +0.014%] None None None
sampler_only/slow_path/64 execution_time [62.081ns; 62.096ns] or [-0.012%; +0.012%] None None None
sampler_only/slow_path/65536 execution_time [66.663ns; 66.684ns] or [-0.016%; +0.016%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz b12ba30 1784112408 max.beckett/publish-heap-profiling-crates
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sampler_only/fast_path/16 execution_time 14.003ns 14.070ns ± 0.014ns 14.069ns ± 0.005ns 14.075ns 14.088ns 14.122ns 14.162ns 0.66% 0.972 14.523 0.10% 0.001ns 1 200
sampler_only/fast_path/256 execution_time 14.002ns 14.072ns ± 0.020ns 14.069ns ± 0.005ns 14.076ns 14.096ns 14.133ns 14.256ns 1.33% 4.709 40.532 0.14% 0.001ns 1 200
sampler_only/fast_path/4096 execution_time 14.001ns 14.070ns ± 0.013ns 14.069ns ± 0.005ns 14.073ns 14.092ns 14.119ns 14.135ns 0.47% 0.221 10.301 0.09% 0.001ns 1 200
sampler_only/fast_path/64 execution_time 14.001ns 14.070ns ± 0.012ns 14.070ns ± 0.005ns 14.075ns 14.084ns 14.097ns 14.130ns 0.43% -0.878 11.983 0.08% 0.001ns 1 200
sampler_only/fast_path/65536 execution_time 14.001ns 14.071ns ± 0.015ns 14.070ns ± 0.005ns 14.076ns 14.086ns 14.116ns 14.200ns 0.93% 2.643 31.908 0.11% 0.001ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sampler_only/fast_path/16 execution_time [14.068ns; 14.072ns] or [-0.014%; +0.014%] None None None
sampler_only/fast_path/256 execution_time [14.069ns; 14.075ns] or [-0.019%; +0.019%] None None None
sampler_only/fast_path/4096 execution_time [14.068ns; 14.072ns] or [-0.013%; +0.013%] None None None
sampler_only/fast_path/64 execution_time [14.068ns; 14.071ns] or [-0.012%; +0.012%] None None None
sampler_only/fast_path/65536 execution_time [14.069ns; 14.073ns] or [-0.015%; +0.015%] None None None

Baseline

Baseline benchmark details

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_noop_fast_path/16 execution_time 14.401ns 14.471ns ± 0.012ns 14.470ns ± 0.005ns 14.476ns 14.489ns 14.499ns 14.526ns 0.38% -0.947 12.921 0.08% 0.001ns 1 200
alloc_free/sampled_noop_fast_path/256 execution_time 14.402ns 14.475ns ± 0.030ns 14.471ns ± 0.005ns 14.477ns 14.490ns 14.537ns 14.845ns 2.58% 9.691 115.367 0.21% 0.002ns 1 200
alloc_free/sampled_noop_fast_path/4096 execution_time 14.403ns 14.473ns ± 0.015ns 14.471ns ± 0.005ns 14.477ns 14.495ns 14.518ns 14.568ns 0.67% 1.285 15.538 0.10% 0.001ns 1 200
alloc_free/sampled_noop_fast_path/64 execution_time 14.401ns 14.474ns ± 0.023ns 14.472ns ± 0.005ns 14.477ns 14.491ns 14.519ns 14.677ns 1.42% 6.434 55.027 0.16% 0.002ns 1 200
alloc_free/sampled_noop_fast_path/65536 execution_time 14.401ns 14.473ns ± 0.015ns 14.472ns ± 0.007ns 14.479ns 14.491ns 14.506ns 14.563ns 0.63% 0.300 11.486 0.10% 0.001ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_noop_fast_path/16 execution_time [14.470ns; 14.473ns] or [-0.011%; +0.011%] None None None
alloc_free/sampled_noop_fast_path/256 execution_time [14.470ns; 14.479ns] or [-0.029%; +0.029%] None None None
alloc_free/sampled_noop_fast_path/4096 execution_time [14.471ns; 14.475ns] or [-0.014%; +0.014%] None None None
alloc_free/sampled_noop_fast_path/64 execution_time [14.471ns; 14.477ns] or [-0.022%; +0.022%] None None None
alloc_free/sampled_noop_fast_path/65536 execution_time [14.471ns; 14.475ns] or [-0.014%; +0.014%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_system_slow_path/16 execution_time 89.302ns 89.515ns ± 0.154ns 89.489ns ± 0.039ns 89.535ns 89.642ns 89.978ns 91.277ns 2.00% 7.983 84.898 0.17% 0.011ns 1 200
alloc_free/sampled_system_slow_path/256 execution_time 89.490ns 89.675ns ± 0.114ns 89.657ns ± 0.034ns 89.695ns 89.810ns 90.127ns 90.685ns 1.15% 4.594 32.377 0.13% 0.008ns 1 200
alloc_free/sampled_system_slow_path/4096 execution_time 153.645ns 155.419ns ± 0.375ns 155.434ns ± 0.201ns 155.613ns 155.948ns 156.250ns 157.510ns 1.34% 0.237 6.579 0.24% 0.027ns 1 200
alloc_free/sampled_system_slow_path/64 execution_time 89.855ns 90.310ns ± 0.078ns 90.303ns ± 0.037ns 90.343ns 90.416ns 90.508ns 90.730ns 0.47% -0.073 9.825 0.09% 0.006ns 1 200
alloc_free/sampled_system_slow_path/65536 execution_time 154.385ns 155.862ns ± 0.291ns 155.834ns ± 0.106ns 155.946ns 156.282ns 156.638ns 157.717ns 1.21% 1.463 14.646 0.19% 0.021ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_system_slow_path/16 execution_time [89.493ns; 89.536ns] or [-0.024%; +0.024%] None None None
alloc_free/sampled_system_slow_path/256 execution_time [89.659ns; 89.691ns] or [-0.018%; +0.018%] None None None
alloc_free/sampled_system_slow_path/4096 execution_time [155.367ns; 155.471ns] or [-0.033%; +0.033%] None None None
alloc_free/sampled_system_slow_path/64 execution_time [90.299ns; 90.321ns] or [-0.012%; +0.012%] None None None
alloc_free/sampled_system_slow_path/65536 execution_time [155.822ns; 155.903ns] or [-0.026%; +0.026%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_system_fast_path/16 execution_time 25.988ns 26.224ns ± 0.099ns 26.220ns ± 0.037ns 26.255ns 26.346ns 26.546ns 26.869ns 2.48% 2.549 14.781 0.38% 0.007ns 1 200
alloc_free/sampled_system_fast_path/256 execution_time 25.962ns 26.224ns ± 0.097ns 26.220ns ± 0.031ns 26.249ns 26.319ns 26.441ns 27.265ns 3.99% 6.107 64.026 0.37% 0.007ns 1 200
alloc_free/sampled_system_fast_path/4096 execution_time 115.187ns 116.403ns ± 0.424ns 116.389ns ± 0.204ns 116.608ns 116.965ns 117.723ns 119.284ns 2.49% 1.505 10.810 0.36% 0.030ns 1 200
alloc_free/sampled_system_fast_path/64 execution_time 26.024ns 26.236ns ± 0.071ns 26.231ns ± 0.033ns 26.265ns 26.320ns 26.520ns 26.551ns 1.22% 1.334 5.878 0.27% 0.005ns 1 200
alloc_free/sampled_system_fast_path/65536 execution_time 99.024ns 100.048ns ± 0.266ns 100.057ns ± 0.159ns 100.208ns 100.477ns 100.728ns 101.163ns 1.11% -0.015 2.507 0.27% 0.019ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_system_fast_path/16 execution_time [26.211ns; 26.238ns] or [-0.052%; +0.052%] None None None
alloc_free/sampled_system_fast_path/256 execution_time [26.211ns; 26.238ns] or [-0.051%; +0.051%] None None None
alloc_free/sampled_system_fast_path/4096 execution_time [116.344ns; 116.462ns] or [-0.051%; +0.051%] None None None
alloc_free/sampled_system_fast_path/64 execution_time [26.226ns; 26.246ns] or [-0.037%; +0.037%] None None None
alloc_free/sampled_system_fast_path/65536 execution_time [100.011ns; 100.085ns] or [-0.037%; +0.037%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/system/16 execution_time 14.001ns 14.284ns ± 0.108ns 14.271ns ± 0.056ns 14.334ns 14.450ns 14.536ns 14.916ns 4.52% 1.421 6.756 0.75% 0.008ns 1 200
alloc_free/system/256 execution_time 14.008ns 14.307ns ± 0.098ns 14.296ns ± 0.052ns 14.357ns 14.455ns 14.623ns 14.713ns 2.92% 0.638 2.413 0.68% 0.007ns 1 200
alloc_free/system/4096 execution_time 105.184ns 106.214ns ± 0.365ns 106.187ns ± 0.228ns 106.417ns 106.879ns 107.255ns 107.624ns 1.35% 0.560 1.246 0.34% 0.026ns 1 200
alloc_free/system/64 execution_time 14.062ns 14.286ns ± 0.108ns 14.277ns ± 0.050ns 14.328ns 14.449ns 14.591ns 15.027ns 5.25% 1.961 10.590 0.76% 0.008ns 1 200
alloc_free/system/65536 execution_time 87.835ns 88.390ns ± 0.211ns 88.383ns ± 0.112ns 88.487ns 88.738ns 89.144ns 89.335ns 1.08% 0.920 3.002 0.24% 0.015ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/system/16 execution_time [14.269ns; 14.299ns] or [-0.104%; +0.104%] None None None
alloc_free/system/256 execution_time [14.293ns; 14.320ns] or [-0.095%; +0.095%] None None None
alloc_free/system/4096 execution_time [106.163ns; 106.265ns] or [-0.048%; +0.048%] None None None
alloc_free/system/64 execution_time [14.271ns; 14.301ns] or [-0.105%; +0.105%] None None None
alloc_free/system/65536 execution_time [88.361ns; 88.419ns] or [-0.033%; +0.033%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/sampled_noop_slow_path/16 execution_time 63.698ns 64.063ns ± 0.089ns 64.055ns ± 0.023ns 64.080ns 64.149ns 64.284ns 64.944ns 1.39% 5.049 49.453 0.14% 0.006ns 1 200
alloc_free/sampled_noop_slow_path/256 execution_time 63.532ns 63.903ns ± 0.063ns 63.900ns ± 0.023ns 63.927ns 63.974ns 64.113ns 64.241ns 0.53% -0.026 13.830 0.10% 0.004ns 1 200
alloc_free/sampled_noop_slow_path/4096 execution_time 63.949ns 64.325ns ± 0.086ns 64.321ns ± 0.028ns 64.348ns 64.393ns 64.503ns 65.184ns 1.34% 4.633 51.306 0.13% 0.006ns 1 200
alloc_free/sampled_noop_slow_path/64 execution_time 63.850ns 64.065ns ± 0.068ns 64.056ns ± 0.024ns 64.085ns 64.165ns 64.281ns 64.610ns 0.86% 3.159 22.135 0.11% 0.005ns 1 200
alloc_free/sampled_noop_slow_path/65536 execution_time 68.281ns 68.492ns ± 0.064ns 68.492ns ± 0.030ns 68.517ns 68.587ns 68.663ns 68.910ns 0.61% 1.359 9.451 0.09% 0.005ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/sampled_noop_slow_path/16 execution_time [64.051ns; 64.075ns] or [-0.019%; +0.019%] None None None
alloc_free/sampled_noop_slow_path/256 execution_time [63.895ns; 63.912ns] or [-0.014%; +0.014%] None None None
alloc_free/sampled_noop_slow_path/4096 execution_time [64.313ns; 64.337ns] or [-0.019%; +0.019%] None None None
alloc_free/sampled_noop_slow_path/64 execution_time [64.056ns; 64.074ns] or [-0.015%; +0.015%] None None None
alloc_free/sampled_noop_slow_path/65536 execution_time [68.483ns; 68.501ns] or [-0.013%; +0.013%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
alloc_free/noop/16 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.402ns 0.403ns 0.405ns 0.64% 1.450 16.438 0.10% 0.000ns 1 200
alloc_free/noop/256 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.402ns 0.403ns 0.403ns 0.38% -0.628 8.124 0.09% 0.000ns 1 200
alloc_free/noop/4096 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.402ns 0.403ns 0.403ns 0.35% -0.934 10.064 0.08% 0.000ns 1 200
alloc_free/noop/64 execution_time 0.400ns 0.402ns ± 0.000ns 0.402ns ± 0.000ns 0.402ns 0.402ns 0.403ns 0.404ns 0.63% 0.621 15.134 0.09% 0.000ns 1 200
alloc_free/noop/65536 execution_time 0.400ns 0.402ns ± 0.001ns 0.402ns ± 0.000ns 0.402ns 0.403ns 0.403ns 0.409ns 1.63% 7.084 76.485 0.14% 0.000ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
alloc_free/noop/16 execution_time [0.402ns; 0.402ns] or [-0.014%; +0.014%] None None None
alloc_free/noop/256 execution_time [0.402ns; 0.402ns] or [-0.012%; +0.012%] None None None
alloc_free/noop/4096 execution_time [0.402ns; 0.402ns] or [-0.011%; +0.011%] None None None
alloc_free/noop/64 execution_time [0.402ns; 0.402ns] or [-0.013%; +0.013%] None None None
alloc_free/noop/65536 execution_time [0.402ns; 0.402ns] or [-0.020%; +0.020%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sampler_only/slow_path/16 execution_time 61.814ns 62.150ns ± 0.074ns 62.145ns ± 0.025ns 62.168ns 62.234ns 62.391ns 62.731ns 0.94% 2.776 22.795 0.12% 0.005ns 1 200
sampler_only/slow_path/256 execution_time 61.830ns 62.113ns ± 0.066ns 62.111ns ± 0.022ns 62.131ns 62.197ns 62.266ns 62.684ns 0.92% 2.784 29.971 0.11% 0.005ns 1 200
sampler_only/slow_path/4096 execution_time 62.194ns 62.488ns ± 0.065ns 62.485ns ± 0.025ns 62.511ns 62.586ns 62.736ns 62.806ns 0.51% 0.424 8.281 0.10% 0.005ns 1 200
sampler_only/slow_path/64 execution_time 61.855ns 62.115ns ± 0.101ns 62.100ns ± 0.018ns 62.120ns 62.195ns 62.322ns 63.368ns 2.04% 9.715 118.045 0.16% 0.007ns 1 200
sampler_only/slow_path/65536 execution_time 66.279ns 66.747ns ± 0.114ns 66.734ns ± 0.031ns 66.765ns 66.882ns 67.008ns 67.907ns 1.76% 5.274 54.108 0.17% 0.008ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sampler_only/slow_path/16 execution_time [62.140ns; 62.160ns] or [-0.017%; +0.017%] None None None
sampler_only/slow_path/256 execution_time [62.104ns; 62.122ns] or [-0.015%; +0.015%] None None None
sampler_only/slow_path/4096 execution_time [62.479ns; 62.497ns] or [-0.014%; +0.014%] None None None
sampler_only/slow_path/64 execution_time [62.101ns; 62.129ns] or [-0.022%; +0.022%] None None None
sampler_only/slow_path/65536 execution_time [66.731ns; 66.762ns] or [-0.024%; +0.024%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz a10f667 1784074032 main
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sampler_only/fast_path/16 execution_time 13.601ns 13.667ns ± 0.014ns 13.667ns ± 0.004ns 13.671ns 13.682ns 13.710ns 13.780ns 0.83% 1.995 23.877 0.10% 0.001ns 1 200
sampler_only/fast_path/256 execution_time 13.602ns 13.668ns ± 0.022ns 13.666ns ± 0.005ns 13.672ns 13.691ns 13.709ns 13.929ns 1.93% 7.805 90.573 0.16% 0.002ns 1 200
sampler_only/fast_path/4096 execution_time 13.601ns 13.669ns ± 0.013ns 13.669ns ± 0.005ns 13.673ns 13.687ns 13.706ns 13.761ns 0.68% 0.922 16.416 0.10% 0.001ns 1 200
sampler_only/fast_path/64 execution_time 13.604ns 13.669ns ± 0.013ns 13.667ns ± 0.005ns 13.673ns 13.683ns 13.708ns 13.775ns 0.79% 2.698 24.503 0.10% 0.001ns 1 200
sampler_only/fast_path/65536 execution_time 13.601ns 13.668ns ± 0.015ns 13.666ns ± 0.004ns 13.672ns 13.683ns 13.695ns 13.808ns 1.04% 3.720 45.634 0.11% 0.001ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sampler_only/fast_path/16 execution_time [13.665ns; 13.669ns] or [-0.015%; +0.015%] None None None
sampler_only/fast_path/256 execution_time [13.665ns; 13.671ns] or [-0.023%; +0.023%] None None None
sampler_only/fast_path/4096 execution_time [13.667ns; 13.671ns] or [-0.014%; +0.014%] None None None
sampler_only/fast_path/64 execution_time [13.667ns; 13.671ns] or [-0.013%; +0.013%] None None None
sampler_only/fast_path/65536 execution_time [13.666ns; 13.670ns] or [-0.015%; +0.015%] None None None

@dd-octo-sts

dd-octo-sts Bot commented Jul 14, 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.a 86.15 MB 86.15 MB 0% (0 B) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 7.88 MB 7.88 MB 0% (0 B) 👌
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 10.62 MB 10.62 MB 0% (0 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 97.40 MB 97.40 MB 0% (0 B) 👌
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 25.54 MB 25.54 MB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 88.44 KB 88.44 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 185.33 MB 185.34 MB +0% (+16.00 KB) 👌
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 957.25 MB 957.25 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 8.35 MB 8.35 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 88.44 KB 88.44 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 24.72 MB 24.72 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 49.21 MB 49.21 MB 0% (0 B) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 22.19 MB 22.19 MB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 89.82 KB 89.82 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 189.78 MB 189.79 MB +0% (+8.00 KB) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 945.93 MB 945.93 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 6.46 MB 6.46 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 89.82 KB 89.82 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 26.54 MB 26.54 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 46.82 MB 46.82 MB 0% (0 B) 👌
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 76.96 MB 76.96 MB 0% (0 B) 👌
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 8.81 MB 8.81 MB 0% (0 B) 👌
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 92.37 MB 92.37 MB 0% (0 B) 👌
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 10.72 MB 10.72 MB 0% (0 B) 👌

@scottgerring scottgerring changed the title make heap crates publishable feat(heap-profiling): make heap crates publishable Jul 15, 2026
@scottgerring scottgerring requested a review from r1viollet July 15, 2026 09:41
@scottgerring scottgerring marked this pull request as ready for review July 15, 2026 09:41
@scottgerring scottgerring requested a review from a team as a code owner July 15, 2026 09:41

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 44d16317f5

ℹ️ About Codex in GitHub

Codex has been enabled to automatically 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".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

@@ -10,7 +10,6 @@ repository = "https://github.com/DataDog/libdatadog/tree/main/libdd-profiling-he
edition.workspace = true
rust-version.workspace = true
license.workspace = true

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Include BSD license metadata before publishing sampler

Once publish = false is removed, this crate will upload vendor/usdt.h (it appears in cargo package --list), and libdd-profiling-heap-sampler/vendor/README.md documents that file as BSD-2-Clause. The packaged crate does not include the workspace-level NOTICE/LICENSE, while license.workspace still advertises only Apache-2.0, so publishing this artifact would misstate/omit the BSD notice for the bundled header. Please include the BSD license/notice in the crate or update the package license metadata before publishing.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This is a fair observation, and is waiting for a change on the license tool we use so that it can actually be actioned. I have asked internally in #opensource to get some direction on this. In the meantime the vendored notice and license and included in the source tree. I will add it to the crate metadata in the meantime.

DataDog/rust-license-tool#270

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Added NOTICE to this package following the pattern in the rest of the repo covering this. This should satisfy our licensing requirements.

Comment thread libdd-profiling-heap-gotter/Cargo.toml
@scottgerring scottgerring requested a review from a team as a code owner July 15, 2026 10:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants