Skip to content

Commit c2cb031

Browse files
authored
chore: harden uv dependency resolution (#3014)
1 parent fe3a5e6 commit c2cb031

8 files changed

Lines changed: 32 additions & 10 deletions

File tree

.github/workflows/docs.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ jobs:
3636
fi
3737
- name: Setup uv
3838
if: steps.docs-only.outputs.skip != 'true'
39-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
39+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
4040
with:
41+
version: "0.11.7"
4142
enable-cache: true
4243
- name: Install dependencies
4344
if: steps.docs-only.outputs.skip != 'true'

.github/workflows/publish.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@ jobs:
2323
- name: Checkout repository
2424
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
2525
- name: Setup uv
26-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
26+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
2727
with:
28+
version: "0.11.7"
2829
enable-cache: true
2930
- name: Install dependencies
3031
run: make sync

.github/workflows/release-pr.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,9 @@ jobs:
2121
fetch-depth: 0
2222
ref: main
2323
- name: Setup uv
24-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
24+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
2525
with:
26+
version: "0.11.7"
2627
enable-cache: true
2728
- name: Fetch tags
2829
run: git fetch origin --tags --prune

.github/workflows/tests.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ jobs:
2424
run: ./.github/scripts/detect-changes.sh code "${{ github.event.pull_request.base.sha || github.event.before }}" "${{ github.sha }}"
2525
- name: Setup uv
2626
if: steps.changes.outputs.run == 'true'
27-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
27+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
2828
with:
29+
version: "0.11.7"
2930
enable-cache: true
3031
- name: Install dependencies
3132
if: steps.changes.outputs.run == 'true'
@@ -50,8 +51,9 @@ jobs:
5051
run: ./.github/scripts/detect-changes.sh code "${{ github.event.pull_request.base.sha || github.event.before }}" "${{ github.sha }}"
5152
- name: Setup uv
5253
if: steps.changes.outputs.run == 'true'
53-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
54+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
5455
with:
56+
version: "0.11.7"
5557
enable-cache: true
5658
- name: Install dependencies
5759
if: steps.changes.outputs.run == 'true'
@@ -84,8 +86,9 @@ jobs:
8486
run: ./.github/scripts/detect-changes.sh code "${{ github.event.pull_request.base.sha || github.event.before }}" "${{ github.sha }}"
8587
- name: Setup uv
8688
if: steps.changes.outputs.run == 'true'
87-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
89+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
8890
with:
91+
version: "0.11.7"
8992
enable-cache: true
9093
python-version: ${{ matrix.python-version }}
9194
- name: Install dependencies
@@ -117,8 +120,9 @@ jobs:
117120
run: ./.github/scripts/detect-changes.sh code "${{ github.event.pull_request.base.sha || github.event.before }}" "${{ github.sha }}"
118121
- name: Setup uv
119122
if: steps.changes.outputs.run == 'true'
120-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
123+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
121124
with:
125+
version: "0.11.7"
122126
enable-cache: true
123127
python-version: "3.13"
124128
- name: Install dependencies
@@ -143,8 +147,9 @@ jobs:
143147
run: ./.github/scripts/detect-changes.sh docs "${{ github.event.pull_request.base.sha || github.event.before }}" "${{ github.sha }}"
144148
- name: Setup uv
145149
if: steps.changes.outputs.run == 'true'
146-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
150+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
147151
with:
152+
version: "0.11.7"
148153
enable-cache: true
149154
- name: Install dependencies
150155
if: steps.changes.outputs.run == 'true'

.github/workflows/update-docs.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,9 @@ jobs:
4848
with:
4949
fetch-depth: 0
5050
- name: Setup uv
51-
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
51+
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # setup-uv v8.1.0; uv 0.11.7
5252
with:
53+
version: "0.11.7"
5354
enable-cache: true
5455
- name: Install dependencies
5556
run: make sync

examples/sandbox/tutorials/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
FROM python:3.14-slim
2+
COPY --from=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a /uv /bin/uv
23

34
RUN apt-get update \
45
&& apt-get install -y --no-install-recommends \
@@ -8,6 +9,6 @@ RUN apt-get update \
89
ripgrep \
910
&& rm -rf /var/lib/apt/lists/*
1011

11-
RUN python -m pip install --no-cache-dir pypdf uv
12+
RUN uv pip install --system --no-cache-dir --index-strategy first-index --exclude-newer "7 days" pypdf
1213

1314
WORKDIR /workspace

pyproject.toml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,3 +208,11 @@ markers = [
208208

209209
[tool.inline-snapshot]
210210
format-command = "ruff format --stdin-filename {filename}"
211+
212+
[tool.uv]
213+
exclude-newer = "7 days"
214+
index-strategy = "first-index"
215+
216+
[tool.uv.pip]
217+
exclude-newer = "7 days"
218+
index-strategy = "first-index"

uv.lock

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)