Skip to content

ci: use uv to install poetry in CI workflow#652

Merged
bdraco merged 1 commit into
mainfrom
ci/use-uv-to-install-poetry
May 15, 2026
Merged

ci: use uv to install poetry in CI workflow#652
bdraco merged 1 commit into
mainfrom
ci/use-uv-to-install-poetry

Conversation

@bdraco
Copy link
Copy Markdown
Member

@bdraco bdraco commented May 15, 2026

Summary

Mirror of python-zeroconf/python-zeroconf#1673 (which mirrors esphome/aioesphomeapi#1650) for dbus-fast. Speeds up CI by replacing the slow snok/install-poetry provisioning with astral-sh/setup-uv + uv tool install poetry. No production code is touched.

Details

  • test job — adds astral-sh/setup-uv@v8.1.0 (SHA-pinned, enable-cache: true) before installing poetry, then runs uv tool install poetry in place of snok/install-poetry@v1.4.1. setup-python's cache: "poetry" is preserved — it caches the per-job project venv keyed off poetry.lock, which is independent of how poetry itself reaches PATH.
  • benchmark job — same swap.
  • test_big_endian job — left alone. It runs inside an s390x container via uraimo/run-on-arch-action and installs poetry from apt (python3-poetry); uv isn't on that path.

Win is per-job, so it compounds across the test matrix (CPython 3.10–3.14, 3.14t × skip_cython/use_cython on ubuntu-latest = 12 jobs). Steady-state behaviour is unchanged; the speed-up shows up on every job's poetry-install step.

Test plan

  • CI test matrix is green across all 12 rows (the workflow change is exercised by every job on this PR).
  • CI benchmark job runs to completion and CodSpeed posts a delta.
  • test_big_endian still passes (unchanged).
  • lint and commitlint jobs are green.

🤖 Generated with Claude Code

Mirror of python-zeroconf/python-zeroconf#1673 (which mirrors
esphome/aioesphomeapi#1650) for dbus-fast. Replace the slow
snok/install-poetry action with astral-sh/setup-uv + uv tool
install poetry in the test and benchmark jobs. setup-python's
cache: "poetry" stays — it caches the project venv keyed off
poetry.lock and is independent of how poetry itself reaches PATH.

The test_big_endian job installs poetry via apt inside an s390x
container and is left alone.

No production code touched; workflow-only.
@codecov
Copy link
Copy Markdown

codecov Bot commented May 15, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.16%. Comparing base (d64ff78) to head (4f155df).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #652      +/-   ##
==========================================
+ Coverage   88.58%   89.16%   +0.57%     
==========================================
  Files          29       29              
  Lines        3488     3488              
  Branches      602      602              
==========================================
+ Hits         3090     3110      +20     
+ Misses        247      228      -19     
+ Partials      151      150       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq Bot commented May 15, 2026

Merging this PR will not alter performance

✅ 6 untouched benchmarks


Comparing ci/use-uv-to-install-poetry (4f155df) with main (7b85364)

Open in CodSpeed

@bdraco bdraco merged commit 794cbb9 into main May 15, 2026
20 of 23 checks passed
@bdraco bdraco deleted the ci/use-uv-to-install-poetry branch May 15, 2026 20:15
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