Skip to content

pyamplicol: drop profiling-campaign and report tooling - #344

Merged
oliviermattelaer merged 1 commit into
merge-pyamplicolfrom
pyamplicol-prune
Oct 27, 2026
Merged

oliviermattelaer merged 1 commit into
merge-pyamplicolfrom
pyamplicol-prune

Conversation

@theoheimel

Copy link
Copy Markdown
Contributor

Stacked on #301. Removes pyamplicol files that MadGraph7 doesn't need: 259 files, ~230k lines.

Removed

  • src/pyamplicol/_profiling_campaign/: the LaTeX report template and stored measurement results that pyamplicol profiling-campaign copy copied into a new campaign directory. The CLI subcommand and the wheel staging step (_stage_packaged_profiling_campaign, which also bundled tools/performance_report and the legacy oracle as pyamplicol/_performance_report) are removed with it.
  • tools/performance_report/, tools/fft_profiling/, run_fft_profiling_render.sh, docs/performance_reports/, plus the profiling-campaign and FullColor FFT profiling doc pages.
  • 47 tools/developer/ scripts. They are either one-off gates and benchmarks that nothing referenced, or they import tools.performance_report, or they post-process the removed FFT study. The justfile recipes numerical-acceptance, fft-numerical-acceptance and fft-performance-acceptance go with them. These were opt-in and not part of CI.
  • umami_example/ and flake.nix/flake.lock. The UMAMI doc page now links to the upstream example instead.
  • The tests for all of the above, and the orphaned tests/fixtures/numerical_acceptance/.

Kept

  • justfile, because CI runs just typing, just rust-check and just rust-test.
  • The reference-fixture tooling (legacy_oracle, reference_capture, reference_fixture, legacy_amplicol.py, analytic_oracles.py), prepare_source_runtime.py, and the remaining benchmark helpers.
  • .github/scripts/import_pyamplicol.sh is unchanged. Adding these paths to its filter would rewrite every imported commit SHA, and upstream is archived.

Other edits

  • The build backend no longer has the "generated report outputs only" exception in _clean_source_revision. That exception depended on tools/performance_report/source_identity.py.
  • .gitattributes: dropped the export-ignore and linguist entries for the deleted paths. Also dropped the -export-ignore exceptions for the legacy oracle, since the wheel no longer bundles it.
  • docs/source/conf.py: dropped the performance_reports copy filter.
  • Docs: links to the removed pages are gone. The published report PDFs are still linked from upstream.

Testing

  • Unit tests for the build backend, CLI utilities, deployment harness, packaging hygiene, sdist manifest, examples, dependency installer, release and benchmarking: 710 passed, 9 skipped (just not installed).
  • pytest --collect-only tests collects 4435 tests with only the three known _rusticol errors, which also occur without this change.
  • Every remaining tools/**/*.py module imports.
  • Not run: a full wheel build, or the native/integration suites.

Remove the packaged profiling campaign (`pyamplicol profiling-campaign`),
the performance-report and FFT-profiling drivers, the developer gates and
benchmarks that only fed them, the UMAMI/MadSpace demo, the nix flake, and
their tests and docs. Published reports stay linked from upstream.
@oliviermattelaer
oliviermattelaer merged commit 75b414c into merge-pyamplicol Oct 27, 2026
220 checks passed
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