dd-trace-py icon indicating copy to clipboard operation
dd-trace-py copied to clipboard

ci: per-component build cache

Open gnufede opened this issue 5 months ago • 3 comments

Checklist

  • [ ] PR author has checked that all the criteria below are met
  • The PR description includes an overview of the change
  • The PR description articulates the motivation for the change
  • The change includes tests OR the PR description describes a testing strategy
  • The PR description notes risks associated with the change, if any
  • Newly-added code is easy to change
  • The change follows the library release note guidelines
  • The change includes or references documentation updates if necessary
  • Backport labels are set (if applicable)

Reviewer Checklist

  • [ ] Reviewer has checked that all the criteria below are met
  • Title is accurate
  • All changes are related to the pull request's stated goal
  • Avoids breaking API changes
  • Testing strategy adequately addresses listed risks
  • Newly-added code is easy to change
  • Release note makes sense to a user of the library
  • If necessary, author has acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment
  • Backport labels are set in a manner that is consistent with the release branch maintenance policy

gnufede avatar Jun 16 '25 11:06 gnufede

CODEOWNERS have been resolved as:

scripts/build_cache.py                                                  @DataDog/apm-core-python
scripts/component_config.py                                             @DataDog/apm-core-python
scripts/get_component_hashes.py                                         @DataDog/apm-core-python
scripts/gen_gitlab_config.py                                            @DataDog/apm-core-python
scripts/get-native-sources-hash.sh                                      @DataDog/apm-core-python
setup.py                                                                @DataDog/python-guild

github-actions[bot] avatar Jun 16 '25 11:06 github-actions[bot]

Bootstrap import analysis

Comparison of import times between this PR and base.

Summary

The average import time from this PR is: 279 ± 5 ms.

The average import time from base is: 281 ± 4 ms.

The import time difference between this PR and base is: -1.7 ± 0.2 ms.

Import time breakdown

The following import paths have shrunk:

ddtrace.auto 1.991 ms (0.71%)
ddtrace.bootstrap.sitecustomize 1.314 ms (0.47%)
ddtrace.bootstrap.preload 1.314 ms (0.47%)
ddtrace.internal.remoteconfig.client 0.632 ms (0.23%)
ddtrace 0.676 ms (0.24%)
ddtrace.internal._unpatched 0.030 ms (0.01%)
json 0.030 ms (0.01%)
json.decoder 0.030 ms (0.01%)
re 0.030 ms (0.01%)
enum 0.030 ms (0.01%)
types 0.030 ms (0.01%)

github-actions[bot] avatar Jun 16 '25 12:06 github-actions[bot]

Benchmarks

Benchmark execution time: 2025-06-16 16:44:42

Comparing candidate commit 0480d388507d8b3d71763906cd8185ee1f7a8d97 in PR branch gnufede/iw-build-cache-improvements with baseline commit 56923920ef93b699cde470d350c94c9a6d7d4d10 in branch main.

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

scenario:iastaspectsospath-ospathjoin_aspect

  • 🟥 execution_time [+888.792ns; +971.718ns] or [+14.505%; +15.858%]

pr-commenter[bot] avatar Jun 16 '25 12:06 pr-commenter[bot]