Skip to content

ci: coverage, python matrix, uv caching - #3

Merged
michaeln31 merged 3 commits into
developfrom
ci/f3-coverage-matrix-uv
Jul 6, 2026
Merged

ci: coverage, python matrix, uv caching#3
michaeln31 merged 3 commits into
developfrom
ci/f3-coverage-matrix-uv

Conversation

@michaeln31

@michaeln31 michaeln31 commented Jul 6, 2026

Copy link
Copy Markdown
Owner

Summary

Phase 0 / F3: extend the test job in ci.yml with coverage reporting, a Python version matrix, and uv-based cached installs.

  • pytest-cov (report-only): adds --cov=custom_components/andersen_ev --cov-report=term-missing --cov-report=xml to the pytest invocation. No --cov-fail-under threshold — the 95% hard gate is deliberately deferred to the Silver phase (S6/Silver Gate).
  • Python matrix ["3.13", "3.14"]: PyPI confirms homeassistant==2026.1.3 has requires_python >= 3.13.2 and declares classifiers for Python 3.13 and 3.14 only. Both versions are included; no guessing beyond what the package metadata states.
  • uv caching: replaces actions/setup-python + pip install with astral-sh/setup-uv@v5 (enable-cache: true, python-version from matrix) and uv pip install --system. Keeps install steps simple and idiomatic.

lint, hassfest, and hacs jobs are unchanged.

Test plan

  • CI run is green for both matrix legs (Python 3.13 and 3.14)
  • Coverage report appears in the test job logs (terminal output + xml artifact)
  • No coverage threshold failure (report-only)
  • uv cache is populated on first run, hit on subsequent runs

@michaeln31
michaeln31 merged commit fade8a1 into develop Jul 6, 2026
6 checks passed
@michaeln31
michaeln31 deleted the ci/f3-coverage-matrix-uv branch July 6, 2026 20:21
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.

1 participant