Avatar for the aio-libs user
aio-libs
aiohttp
BlogDocsChangelog

Performance History

Latest Results

Move pytest config into a `pytest.ini` PR #12621 This patch aligns the pytest configuration shape with other in-org projects like `yarl`, `propcache`, `multidict` and the rest for ease of mass-maintenance. It adopts the shared config file template where possible while pushing the variable configuration options to the calling components. Co-authored-by: Sam Bull <git@sambull.org> Co-authored-by: 🇺🇦 Sviatoslav Sydorenko <webknjaz@redhat.com>
master
2 hours ago
[PR #12621/ce32557b backport][3.15] Move pytest config into a `pytest.ini` (#13712) **This is a backport of PR #12621 as merged into master (ce32557b72e75332589a51b309bd34bcb62989b5).** ## What do these changes do? Move the pytest configuration out of `setup.cfg` into a dedicated top-level `pytest.ini` that follows the shape shared with `propcache` and `awx_plugins.interfaces`, so cross-project infra syncs stay a one-file diff. The calling side (`Makefile`, CI, the Docker test entrypoint) is adjusted where the new defaults would otherwise change what a command does. aiohttp-specific settings are kept: `asyncio_mode = auto`, the `-m "not dev_mode and not autobahn and not internal"` filter, `-p no:aiohttp`, `timeout = 120`, the full `filterwarnings` list, the custom markers and `junit_suite_name = aiohttp_test_suite`. Differences from the old `[tool:pytest]` section: - `minversion` raised from `3.8.2` to `8.4` (pytest-asyncio 1.4 already needs it). - `pytest-xdist` (`--numprocesses=auto`) and `pytest-cov` (`-p pytest_cov`, `--cov`, `--cov-config=.coveragerc.toml`, `--cov-context=test`, `--no-cov-on-fail`) on by default again. - `--doctest-modules`, `--strict-markers`, `faulthandler_timeout = 30`, `empty_parameter_set_mark = xfail`, `doctest_optionflags`, `junit_family = xunit1`, `junit_logging = all`, `junit_duration_report = call`. - `-v` no longer in `addopts`. - `norecursedirs` expanded; it also skips `tests/isolated/`, whose scripts run `asyncio.run()` at import time and would execute during doctest collection. Calling-side adjustments: - `make test` and `tools/testing/entrypoint.sh`: add `--no-cov --numprocesses=0`, so they still run serially without coverage. - `make vtest` / `make vvtest`: add `--numprocesses=0` so `-s` output stays visible. Coverage now actually gets collected, which is what their `--cov-append` step was written for. - `make cov-dev`: unchanged. It produces an HTML report again, since `--cov` is back in `addopts`. - CI unit and Cython jobs: drop the now-redundant `--cov` / `--numprocesses=auto`. A `--cov-config` passed on the command line still overrides the one in `addopts`. - CI `--lf` re-run, dev_mode, Autobahn and benchmark steps: add `--numprocesses=0`, as they had before #12364. Autobahn and benchmark also get `-o faulthandler_timeout=0` next to `--timeout=0`: the 30s watchdog crashed the CodSpeed/valgrind run with exit code 139 on an earlier push of this branch. - Mobile (cibuildwheel): add `--no-cov --numprocesses=0`. `pytest-xdist` goes into `requirements/test-mobile.{in,txt}` so the `--numprocesses` option in `pytest.ini` can be parsed there. - `docs/contributing.rst`: the `-s` hint now mentions `--numprocesses=0`. ## Are there changes in behavior for the user? No runtime changes. Contributors: a bare `pytest` now runs in parallel with coverage. Use `--numprocesses=0` / `--no-cov` (or `make test`) to opt out. ## Is it a substantial burden for the maintainers to support this? No. The layout matches the other aio-libs projects, which makes future syncs easier. ## Related issue number Closes #12620. ## Checklist - [x] I think the code is well written - [ ] Unit tests for the changes exist: N/A (config-only; the existing suite exercises it) - [x] Documentation reflects the changes - [ ] If you provide code modification, please add yourself to `CONTRIBUTORS.txt`: N/A (bot account) - [x] Add a new news fragment into the `CHANGES/` folder Drafted with Claude Opus 5 via Kōan; reviewed by <pending human review>. --- ### Quality Report **Changes**: 10 files changed, 176 insertions(+), 85 deletions(-) **Code scan**: 1 issue(s) found - `docs/contributing.rst:105` — debug print statement **Tests**: failed (FAILED) **Branch hygiene**: clean _Generated by [Kōan](https://koan.anantys.com)_ Co-authored-by: Sam Bull <git@sambull.org> Co-authored-by: 🇺🇦 Sviatoslav Sydorenko <webknjaz@redhat.com>
3.15
11 hours ago
[PR #12621/ce32557b backport][3.14] Move pytest config into a `pytest.ini` (#13713) **This is a backport of PR #12621 as merged into master (ce32557b72e75332589a51b309bd34bcb62989b5).** ## What do these changes do? Move the pytest configuration out of `setup.cfg` into a dedicated top-level `pytest.ini` that follows the shape shared with `propcache` and `awx_plugins.interfaces`, so cross-project infra syncs stay a one-file diff. The calling side (`Makefile`, CI, the Docker test entrypoint) is adjusted where the new defaults would otherwise change what a command does. aiohttp-specific settings are kept: `asyncio_mode = auto`, the `-m "not dev_mode and not autobahn and not internal"` filter, `-p no:aiohttp`, `timeout = 120`, the full `filterwarnings` list, the custom markers and `junit_suite_name = aiohttp_test_suite`. Differences from the old `[tool:pytest]` section: - `minversion` raised from `3.8.2` to `8.4` (pytest-asyncio 1.4 already needs it). - `pytest-xdist` (`--numprocesses=auto`) and `pytest-cov` (`-p pytest_cov`, `--cov`, `--cov-config=.coveragerc.toml`, `--cov-context=test`, `--no-cov-on-fail`) on by default again. - `--doctest-modules`, `--strict-markers`, `faulthandler_timeout = 30`, `empty_parameter_set_mark = xfail`, `doctest_optionflags`, `junit_family = xunit1`, `junit_logging = all`, `junit_duration_report = call`. - `-v` no longer in `addopts`. - `norecursedirs` expanded; it also skips `tests/isolated/`, whose scripts run `asyncio.run()` at import time and would execute during doctest collection. Calling-side adjustments: - `make test` and `tools/testing/entrypoint.sh`: add `--no-cov --numprocesses=0`, so they still run serially without coverage. - `make vtest` / `make vvtest`: add `--numprocesses=0` so `-s` output stays visible. Coverage now actually gets collected, which is what their `--cov-append` step was written for. - `make cov-dev`: unchanged. It produces an HTML report again, since `--cov` is back in `addopts`. - CI unit and Cython jobs: drop the now-redundant `--cov` / `--numprocesses=auto`. A `--cov-config` passed on the command line still overrides the one in `addopts`. - CI `--lf` re-run, dev_mode, Autobahn and benchmark steps: add `--numprocesses=0`, as they had before #12364. Autobahn and benchmark also get `-o faulthandler_timeout=0` next to `--timeout=0`: the 30s watchdog crashed the CodSpeed/valgrind run with exit code 139 on an earlier push of this branch. - Mobile (cibuildwheel): add `--no-cov --numprocesses=0`. `pytest-xdist` goes into `requirements/test-mobile.{in,txt}` so the `--numprocesses` option in `pytest.ini` can be parsed there. - `docs/contributing.rst`: the `-s` hint now mentions `--numprocesses=0`. ## Are there changes in behavior for the user? No runtime changes. Contributors: a bare `pytest` now runs in parallel with coverage. Use `--numprocesses=0` / `--no-cov` (or `make test`) to opt out. ## Is it a substantial burden for the maintainers to support this? No. The layout matches the other aio-libs projects, which makes future syncs easier. ## Related issue number Closes #12620. ## Checklist - [x] I think the code is well written - [ ] Unit tests for the changes exist: N/A (config-only; the existing suite exercises it) - [x] Documentation reflects the changes - [ ] If you provide code modification, please add yourself to `CONTRIBUTORS.txt`: N/A (bot account) - [x] Add a new news fragment into the `CHANGES/` folder Drafted with Claude Opus 5 via Kōan; reviewed by <pending human review>. --- ### Quality Report **Changes**: 10 files changed, 176 insertions(+), 85 deletions(-) **Code scan**: 1 issue(s) found - `docs/contributing.rst:105` — debug print statement **Tests**: failed (FAILED) **Branch hygiene**: clean _Generated by [Kōan](https://koan.anantys.com)_ Co-authored-by: Sam Bull <git@sambull.org> Co-authored-by: 🇺🇦 Sviatoslav Sydorenko <webknjaz@redhat.com>
3.14
11 hours ago
Symlink the PR number to the contrib change note
aiolibsbot:koan/implement-12620
15 hours ago

Latest Branches

CodSpeed Performance Gauge
0%
[PR #12621/ce32557b backport][3.15] Move pytest config into a `pytest.ini`#13712
12 hours ago
255bc35
aiolibsbot:patchback/backports/3.15/ce32557b72e75332589a51b309bd34bcb62989b5/pr-12621
CodSpeed Performance Gauge
0%
12 hours ago
b057d67
aiolibsbot:patchback/backports/3.14/ce32557b72e75332589a51b309bd34bcb62989b5/pr-12621
CodSpeed Performance Gauge
+14%
13 hours ago
d688818
aiolibsbot:koan/implement-12620
© 2026 CodSpeed Technology
Home Terms Privacy Docs