• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pantsbuild / pants / 25416762044
93%
main: 93%

Build:
Build:
LAST BUILD BRANCH: deps/reqwest-0.13
DEFAULT BRANCH: main
Ran 06 May 2026 04:49AM UTC
Jobs 12
Files 1737
Run time 4min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 May 2026 04:38AM UTC coverage: 92.885% (-0.03%) from 92.911%
25416762044

push

github

web-flow
Support for uv lockfiles as an alternative to pex lockfiles (cherry-pick of #23302) (#23320)

uv lockfiles are first-class entities that users check in.
When a pex is needed, we use uv to create a venv, which
it does very efficiently, and then use pex's
`--venv-repository` feature to build a pex from
(a subset of) that venv's requirements.

Note that we still create VenvPexes to run tools, and
in some cases this might be unnecessary, since we
already have the uv venv. But utilizing those venvs 
directly would be an even bigger change (and this one
is already massive), and there are caching tradeoffs
to figure out . So we leave that for the future (and
probably for the new python  backend).

Note also that the dynamics of lockfile generation remain
pants's (you must generate explicitly) and not uv's
(lockfiles are automatically updated for you when
input requirements change). The latter is desirable, but
again this is for the future.

The general thrust of the changes is:

- Add uv as a third lockfile format (after pex and the deprecated
  legacy constraints file "locking")
- Update the lockfile metadata to include the format (and
  also the name of the resolve that created the lockfile).
- Make lockfile metadata reading much more robust 
  and useful, so we can get the format from it reliably.
  Unfortunately this logic is tricky since it has to handle
  pex lockfiles both with and without separate metadata files.
  For uv we simply require separate metadata files and do
  not add any metadata inside the lockfile itself, as we
  foolishly did for pex lockfiles at one point.
- Update the lockfile diffing code to support diffing
  across all combinations of old/new and pex/uv.
- Update the existing `uv` subsystem for more general use.
- Add src/python/pants/backend/python/util_rules/uv.py, 
  which runs `uv`, first generating ephemeral pyproject.toml
  and uv.toml config files. We handle environments correctly, 
  which requires some `realpath` shenanig... (continued)

443 of 505 new or added lines in 23 files covered. (87.72%)

92030 of 99080 relevant lines covered (92.88%)

4.05 hits per line

Uncovered Changes

Lines Coverage ∆ File
26
61.9
-19.45% src/python/pants/backend/python/util_rules/lockfile_diff.py
11
94.26
-2.84% src/python/pants/backend/python/util_rules/pex_requirements.py
9
88.52
-0.91% src/python/pants/backend/python/goals/lockfile.py
8
87.65
-4.18% src/python/pants/backend/python/subsystems/python_tool_base.py
3
96.85
0.23% src/python/pants/backend/python/util_rules/pex.py
3
96.15
src/python/pants/backend/python/util_rules/uv.py
1
98.18
-1.82% src/python/pants/backend/python/subsystems/uv.py
1
91.67
-0.64% src/python/pants/core/util_rules/lockfile_metadata.py
Jobs
ID Job ID Ran Files Coverage
1 test_python_linux_x86_64_2/10 - 25416762044.1 06 May 2026 04:51AM UTC 1194
58.65
GitHub Action Run
2 test_python_linux_x86_64_0/10 - 25416762044.2 06 May 2026 04:55AM UTC 1211
56.74
GitHub Action Run
3 test_python_linux_x86_64_6/10 - 25416762044.3 06 May 2026 04:50AM UTC 1187
49.54
GitHub Action Run
4 test_python_linux_x86_64_9/10 - 25416762044.4 06 May 2026 04:51AM UTC 1202
54.05
GitHub Action Run
5 test_python_linux_x86_64_3/10 - 25416762044.5 06 May 2026 04:54AM UTC 1191
53.97
GitHub Action Run
6 test_python_linux_x86_64_4/10 - 25416762044.6 06 May 2026 04:59AM UTC 1226
59.42
GitHub Action Run
7 test_python_linux_arm64 - 25416762044.7 06 May 2026 04:55AM UTC 1175
52.33
GitHub Action Run
8 test_python_macos14_arm64 - 25416762044.8 06 May 2026 04:49AM UTC 1175
52.33
GitHub Action Run
9 test_python_linux_x86_64_1/10 - 25416762044.9 06 May 2026 04:53AM UTC 1190
49.18
GitHub Action Run
10 test_python_linux_x86_64_5/10 - 25416762044.10 06 May 2026 04:51AM UTC 1206
59.67
GitHub Action Run
11 test_python_linux_x86_64_8/10 - 25416762044.11 06 May 2026 04:56AM UTC 1194
53.6
GitHub Action Run
12 test_python_linux_x86_64_7/10 - 25416762044.12 06 May 2026 04:57AM UTC 1197
51.29
GitHub Action Run
Source Files on build 25416762044
  • Tree
  • List 1737
  • Changed 27
  • Source Changed 24
  • Coverage Changed 26
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25416762044
  • a4a20b63 on github
  • Prev Build on 2.32.x (#25401284162)
  • Next Build on 2.32.x (#25454925802)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc