From 7c0bc4867b661b8c9049e9d5c0dfd8d952dd1ea3 Mon Sep 17 00:00:00 2001 From: AlexeyShalaev <75322386+AlexeyShalaev@users.noreply.github.com> Date: Wed, 7 Oct 2026 16:52:52 +0300 Subject: [PATCH] chore: install the extras in make install, test every Python version - make install: run `uv sync --group dev --all-extras`, as CONTRIBUTING.md and CI do; without the extras `make test` fails its coverage threshold. - CI: add Python 3.14 to the unit-test matrix, so it covers every minor version from the requires-python floor (3.12) to 3.14, and add the 3.14 classifier to pyproject.toml. - Issue templates: drop the contact link to GitHub Discussions, which are disabled here, and the contact_links key it leaves empty. - Project profile: update the install command and the CI Python versions. --- .agents/project.md | 4 ++-- .github/ISSUE_TEMPLATE/config.yml | 4 ---- .github/workflows/ci.yml | 2 +- Makefile | 2 +- pyproject.toml | 1 + 5 files changed, 5 insertions(+), 8 deletions(-) diff --git a/.agents/project.md b/.agents/project.md index aa3a013..28eb022 100644 --- a/.agents/project.md +++ b/.agents/project.md @@ -11,10 +11,10 @@ | Task | Command | |---|---| -| Install dependencies | `uv sync --group dev --all-extras` (CONTRIBUTING.md, CI). `make install` runs `uv sync --group dev` without the extras: the tests that need an SDK are then skipped, and `make test` fails its coverage threshold. | +| Install dependencies | `make install`: `uv sync --group dev --all-extras`, as in CONTRIBUTING.md and CI. Without the extras the tests that need an SDK are skipped, and `make test` fails its coverage threshold. | | Format | `make fmt`: `uv run ruff format .`, then `uv run ruff check --fix .` | | Lint and type-check | `make check`: `uv run ruff check .`, `uv run ruff format --check .`, `uv run mypy clientwright`, `uv run lint-imports` (the import-linter contracts in `pyproject.toml`). CI's lint job runs the same four. | -| Test | `make test`: the whole suite, `uv run pytest --cov=clientwright --cov-fail-under=97`. Narrower: `make test-unit` (`uv run pytest -m unit`) and `make test-integration` (`uv run pytest -m integration`). CI runs `uv run pytest -m unit --cov=clientwright --cov-fail-under=90` on Python 3.12 and 3.13, `uv run pytest -m integration`, the unit tests with no extra installed (`uv sync --group test`), and the requests and urllib3 tests with only those two extras. | +| Test | `make test`: the whole suite, `uv run pytest --cov=clientwright --cov-fail-under=97`. Narrower: `make test-unit` (`uv run pytest -m unit`) and `make test-integration` (`uv run pytest -m integration`). CI runs `uv run pytest -m unit --cov=clientwright --cov-fail-under=90` on Python 3.12, 3.13 and 3.14, `uv run pytest -m integration`, the unit tests with no extra installed (`uv sync --group test`), and the requests and urllib3 tests with only those two extras. | | Run locally | A library: nothing to run. The docs: `make docs-serve`. | | Stop the local run | Ctrl+C in the terminal of `make docs-serve`. | diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 1730df4..3ba13e0 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,5 +1 @@ blank_issues_enabled: false -contact_links: - - name: Question or discussion - url: https://github.com/bedrock-python/clientwright/discussions - about: Ask a question or start a discussion about clientwright diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d6962c9..da1dc57 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -47,7 +47,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.12", "3.13"] + python-version: ["3.12", "3.13", "3.14"] steps: - uses: actions/checkout@v7 - uses: astral-sh/setup-uv@v7 diff --git a/Makefile b/Makefile index 1578a5d..a1c4ff8 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ .PHONY: test test-unit test-integration test-live fmt check build install docs-serve docs-build clean install: - uv sync --group dev + uv sync --group dev --all-extras fmt: uv run ruff format . diff --git a/pyproject.toml b/pyproject.toml index da086c0..d9a32fe 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,6 +33,7 @@ classifiers = [ "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Monitoring",