|
1 | 1 | # Python downstream gate (dd-trace-py) |
2 | 2 |
|
3 | | -Paired **3.14 (baseline)** and **3.15 (candidate)** prof-correctness scenarios |
4 | | -exercise the Python profiling stack for the 3.14 → 3.15 migration. They are the |
5 | | -intended default set when dd-trace-py triggers downstream CI on profiling changes. |
6 | | - |
7 | | -**Scenarios land in follow-up PRs** (core families first, then feature-specific |
8 | | -pairs). This directory is an index only — not a runnable scenario. |
| 3 | +Two prof-correctness scenarios exercise **MEM domain** heap profiling on **3.14 |
| 4 | +(baseline)** and **3.15 (candidate)**. This is **feature coverage** (off by |
| 5 | +default: `DD_PROFILING_MEMORY_MEM_DOMAIN_ENABLED`), not default-profiler gate. |
9 | 6 |
|
10 | 7 | ## Scenarios |
11 | 8 |
|
12 | | -| Family | 3.14 (baseline) | 3.15 (candidate) | PR | |
13 | | -|--------|-----------------|---------------------|-----| |
14 | | -| _(pending)_ | — | — | Core scenarios in follow-up PRs | |
| 9 | +| Family | 3.14 (baseline) | 3.15 (candidate) | |
| 10 | +|--------|-------------------|------------------| |
| 11 | +| mem-domain | `python_mem_domain_3.14` | `python_mem_domain_3.15` | |
15 | 12 |
|
16 | 13 | ## Default downstream regexp |
17 | 14 |
|
18 | | -Once scenarios are added, dd-trace-py should pass an explicit regexp (not the |
19 | | -downstream workflow default of `python.*`). The regexp grows as families merge; |
20 | | -see each PR for the current value. |
21 | | - |
22 | | -Override via `workflow_dispatch` → `test_scenarios`, or when triggering |
23 | | -[`downstream-python.yml`](../../.github/workflows/downstream-python.yml) manually. |
| 15 | +``` |
| 16 | +python_mem_domain_3\.(14|15) |
| 17 | +``` |
24 | 18 |
|
25 | 19 | ## Wheel install |
26 | 20 |
|
27 | | -Every scenario builds against a **dd-trace-py wheel** via `DDTRACE_INSTALL_URL` |
28 | | -(as `downstream-python.yml` does: |
29 | | -`https://dd-trace-py-builds.s3.amazonaws.com/<sha>/install.sh`), pre-installed in |
30 | | -the base image. |
31 | | - |
32 | | -- **All `*_3.15` folders** — PyPI wheels may not be published for 3.15 yet; |
33 | | - excluded from prof-correctness `main` CI (see `test_scenarios_exclude` in |
34 | | - [`.github/workflows/ci.yml`](../../.github/workflows/ci.yml)). |
35 | | -- **Wheel-only 3.14 folders** — scenarios that depend on unreleased ddtrace |
36 | | - features are also excluded from `main` CI until the feature ships. |
| 21 | +- **3.15** — wheel-only (`DDTRACE_INSTALL_URL`); excluded from `main` CI. |
| 22 | +- **3.14** — runs on `main` CI against PyPI ddtrace. |
37 | 23 |
|
38 | 24 | ## Local run |
39 | 25 |
|
40 | 26 | ```sh |
41 | 27 | export DDTRACE_INSTALL_URL="https://dd-trace-py-builds.s3.amazonaws.com/<commit-sha>/install.sh" |
42 | | -TEST_SCENARIOS='<gate-regexp>' go test -v -run TestScenarios |
| 28 | +TEST_SCENARIOS='python_mem_domain_3\.(14|15)' go test -v -run TestScenarios |
43 | 29 | ``` |
44 | | - |
45 | | -## Gate lifecycle |
46 | | - |
47 | | -This gate tests the **migration delta** (3.14 → 3.15). It is time-boxed: retire |
48 | | -the paired 14v15 framing at 3.15 GA and fold workloads into steady-state |
49 | | -prof-correctness on {oldest, newest} supported Python versions. |
50 | | - |
51 | | -## Further reading |
52 | | - |
53 | | -- prof-correctness downstream wiring: [README](../../README.md#downstream-from-dd-trace-py) |
0 commit comments