Pull request #1790: PIPE-3061/PIPE-3027
Merge in PIPE/pipeline from PIPE-3061-examining-the-possible-memory-leak-when-running-multiple-regression-tests-on-one-pytest to main
* commit 'ebb6ced6fd1f23d977a302abef49c5d461feca85': PIPE-3061: Update `pixi_tasks.md` PIPE-3061: drop Python 3.10/3.11, add CASA 6.7.4 env, update docs theme PIPE-3061: add pixi tasks for regression/unit tests and developer docs PIPE-3061: Add `pytest-xvfb` to development requirements for headless testing support without `xvfb-run` PIPE-3061: Update documentation to clarify xdist worker scaling and per-test timing details PIPE-3061: Add MPI worker scaling recommendations and per-test timing details to documentation PIPE-3061: Add usage examples for `@pytest.mark.mpi` in documentation PIPE-3061: Further improve memory management by triggering garbage collection after clearing caches and releasing context in `PipelineTester` PIPE-3027: Simplify MPI marker handling in pytest configuration and update description for clarity PIPE-3027: add `@pytest.mark.mpi` marker and `--ignore-mpi-markers` option PIPE-2061: Add fixture to clear module-level caches between tests to reduce memory footprint PIPE-3061: Implement unsubscribe functionality in eventbus and improve the memory management for `Context` in `PipelineTester`
PIPE-3061: add pixi tasks for regression/unit tests and developer docs
Add two pixi tasks to pyproject.toml:
- test-regression: runs tests/regression/fast/ with pytest-xdist
(worksteal, -m "not mpi") inside a plain Python session
- test-pltest1: runs a single small ALMA-IF regression test via `casashell`
Both tasks cd into PL_WORKDIR (default: ../working) before launching,
keeping CASA logs and pipeline output out of the source tree.
PL_WORKDIR is overridable at invocation time:
PL_WORKDIR=/zfs/scratch/myrun pixi run test-regression
Also add docs/source/develdocmd/pixi_tasks.md documenting all five
pixi tasks (test-unit, test-regression, test-pltest1,
fetch-casarundata, build-docs), the available CASA environments,
PL_WORKDIR usage, and per-environment invocation examples.