Skip to content

Commit b2f2cf4

Browse files
authored
Merge branch 'main' into toml-preview-features
2 parents 796f6ff + 2784856 commit b2f2cf4

File tree

121 files changed

+3425
-1575
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

121 files changed

+3425
-1575
lines changed

.github/workflows/build-binaries.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ jobs:
6161
- name: "Build sdist"
6262
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
6363
with:
64+
maturin-version: v1.9.6
6465
command: sdist
6566
args: --out dist
6667
- name: "Test sdist"
@@ -81,6 +82,7 @@ jobs:
8182
- name: "Build sdist uv-build"
8283
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
8384
with:
85+
maturin-version: v1.9.6
8486
command: sdist
8587
args: --out crates/uv-build/dist -m crates/uv-build/Cargo.toml
8688
- name: "Test sdist uv-build"
@@ -113,6 +115,7 @@ jobs:
113115
- name: "Build wheels - x86_64"
114116
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
115117
with:
118+
maturin-version: v1.9.6
116119
target: x86_64
117120
args: --release --locked --out dist --features self-update
118121
- name: "Upload wheels"
@@ -143,6 +146,7 @@ jobs:
143146
- name: "Build wheels uv-build - x86_64"
144147
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
145148
with:
149+
maturin-version: v1.9.6
146150
target: x86_64
147151
args: --profile minimal-size --locked --out crates/uv-build/dist -m crates/uv-build/Cargo.toml
148152
- name: "Upload wheels uv-build"
@@ -170,6 +174,7 @@ jobs:
170174
- name: "Build wheels - aarch64"
171175
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
172176
with:
177+
maturin-version: v1.9.6
173178
target: aarch64
174179
args: --release --locked --out dist --features self-update
175180
- name: "Test wheel - aarch64"
@@ -206,6 +211,7 @@ jobs:
206211
- name: "Build wheels uv-build - aarch64"
207212
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
208213
with:
214+
maturin-version: v1.9.6
209215
target: aarch64
210216
args: --profile minimal-size --locked --out crates/uv-build/dist -m crates/uv-build/Cargo.toml
211217
- name: "Test wheel - aarch64"
@@ -247,6 +253,7 @@ jobs:
247253
- name: "Build wheels"
248254
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
249255
with:
256+
maturin-version: v1.9.6
250257
target: ${{ matrix.platform.target }}
251258
args: --release --locked --out dist --features self-update,windows-gui-bin
252259
- name: "Test wheel"
@@ -285,6 +292,7 @@ jobs:
285292
- name: "Build wheels uv-build"
286293
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
287294
with:
295+
maturin-version: v1.9.6
288296
target: ${{ matrix.platform.target }}
289297
args: --profile minimal-size --locked --out crates/uv-build/dist -m crates/uv-build/Cargo.toml
290298
- name: "Test wheel uv-build"
@@ -324,6 +332,7 @@ jobs:
324332
- name: "Build wheels"
325333
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
326334
with:
335+
maturin-version: v1.9.6
327336
target: ${{ matrix.target }}
328337
# Generally, we try to build in a target docker container. In this case however, a
329338
# 32-bit compiler runs out of memory (4GB memory limit for 32-bit), so we cross compile
@@ -390,6 +399,7 @@ jobs:
390399
- name: "Build wheels uv-build"
391400
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
392401
with:
402+
maturin-version: v1.9.6
393403
target: ${{ matrix.target }}
394404
manylinux: auto
395405
args: --profile minimal-size --locked --out crates/uv-build/dist -m crates/uv-build/Cargo.toml
@@ -437,6 +447,7 @@ jobs:
437447
- name: "Build wheels"
438448
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
439449
with:
450+
maturin-version: v1.9.6
440451
target: ${{ matrix.platform.target }}
441452
# On `aarch64`, use `manylinux: 2_28`; otherwise, use `manylinux: auto`.
442453
manylinux: ${{ matrix.platform.arch == 'aarch64' && '2_28' || 'auto' }}
@@ -490,6 +501,7 @@ jobs:
490501
- name: "Build wheels uv-build"
491502
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
492503
with:
504+
maturin-version: v1.9.6
493505
target: ${{ matrix.platform.target }}
494506
# On `aarch64`, use `manylinux: 2_28`; otherwise, use `manylinux: auto`.
495507
manylinux: ${{ matrix.platform.arch == 'aarch64' && '2_28' || 'auto' }}
@@ -544,6 +556,7 @@ jobs:
544556
- name: "Build wheels"
545557
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
546558
with:
559+
maturin-version: v1.9.6
547560
target: ${{ matrix.platform.target }}
548561
manylinux: auto
549562
docker-options: ${{ matrix.platform.maturin_docker_options }}
@@ -598,6 +611,7 @@ jobs:
598611
- name: "Build wheels uv-build"
599612
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
600613
with:
614+
maturin-version: v1.9.6
601615
target: ${{ matrix.platform.target }}
602616
manylinux: auto
603617
docker-options: ${{ matrix.platform.maturin_docker_options }}
@@ -657,6 +671,7 @@ jobs:
657671
- name: "Build wheels"
658672
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
659673
with:
674+
maturin-version: v1.9.6
660675
target: ${{ matrix.platform.target }}
661676
manylinux: auto
662677
docker-options: ${{ matrix.platform.maturin_docker_options }}
@@ -715,6 +730,7 @@ jobs:
715730
- name: "Build wheels uv-build"
716731
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
717732
with:
733+
maturin-version: v1.9.6
718734
target: ${{ matrix.platform.target }}
719735
manylinux: auto
720736
docker-options: ${{ matrix.platform.maturin_docker_options }}
@@ -759,6 +775,7 @@ jobs:
759775
- name: "Build wheels"
760776
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
761777
with:
778+
maturin-version: v1.9.6
762779
target: ${{ matrix.platform.target }}
763780
manylinux: auto
764781
docker-options: ${{ matrix.platform.maturin_docker_options }}
@@ -812,6 +829,7 @@ jobs:
812829
- name: "Build wheels uv-build"
813830
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
814831
with:
832+
maturin-version: v1.9.6
815833
target: ${{ matrix.platform.target }}
816834
manylinux: auto
817835
docker-options: ${{ matrix.platform.maturin_docker_options }}
@@ -864,6 +882,7 @@ jobs:
864882
- name: "Build wheels"
865883
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
866884
with:
885+
maturin-version: v1.9.6
867886
target: ${{ matrix.target }}
868887
manylinux: musllinux_1_1
869888
args: --release --locked --out dist --features self-update
@@ -912,6 +931,7 @@ jobs:
912931
- name: "Build wheels uv-build"
913932
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
914933
with:
934+
maturin-version: v1.9.6
915935
target: ${{ matrix.target }}
916936
manylinux: musllinux_1_1
917937
args: --profile minimal-size --locked --out crates/uv-build/dist -m crates/uv-build/Cargo.toml
@@ -962,6 +982,7 @@ jobs:
962982
- name: "Build wheels"
963983
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
964984
with:
985+
maturin-version: v1.9.6
965986
target: ${{ matrix.platform.target }}
966987
manylinux: musllinux_1_1
967988
args: --release --locked --out dist --features self-update ${{ matrix.platform.arch == 'aarch64' && '--compatibility 2_17' || ''}}
@@ -1034,6 +1055,7 @@ jobs:
10341055
- name: "Build wheels"
10351056
uses: PyO3/maturin-action@86b9d133d34bc1b40018696f782949dac11bd380 # v1.49.4
10361057
with:
1058+
maturin-version: v1.9.6
10371059
target: ${{ matrix.platform.target }}
10381060
manylinux: musllinux_1_1
10391061
args: --profile minimal-size --locked ${{ matrix.platform.arch == 'aarch64' && '--compatibility 2_17' || ''}} --out crates/uv-build/dist -m crates/uv-build/Cargo.toml

.github/workflows/build-docker.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ jobs:
109109
password: ${{ secrets.GITHUB_TOKEN }}
110110

111111
- uses: depot/setup-action@b0b1ea4f69e92ebf5dea3f8713a1b0c37b2126a5
112+
112113
- name: Check tag consistency
113114
if: ${{ needs.docker-plan.outputs.push == 'true' }}
114115
run: |
@@ -281,6 +282,7 @@ jobs:
281282
with:
282283
images: |
283284
${{ env.UV_GHCR_IMAGE }}
285+
${{ env.UV_DOCKERHUB_IMAGE }}
284286
flavor: |
285287
latest=false
286288
tags: |
@@ -311,7 +313,7 @@ jobs:
311313
- name: Add annotations to images
312314
if: ${{ needs.docker-plan.outputs.push == 'true' }}
313315
env:
314-
IMAGES: "${{ env.UV_GHCR_IMAGE }}"
316+
IMAGES: "${{ env.UV_GHCR_IMAGE }} ${{ env.UV_DOCKERHUB_IMAGE }}"
315317
DIGEST: ${{ steps.build-and-push.outputs.digest }}
316318
TAGS: ${{ steps.meta.outputs.tags }}
317319
ANNOTATIONS: ${{ steps.meta.outputs.annotations }}
@@ -385,7 +387,7 @@ jobs:
385387
# minimized to just touch the GHCR manifest.
386388
- name: Add annotations to images
387389
env:
388-
IMAGES: "${{ env.UV_GHCR_IMAGE }}"
390+
IMAGES: "${{ env.UV_GHCR_IMAGE }} ${{ env.UV_DOCKERHUB_IMAGE }}"
389391
DIGEST: ${{ needs.docker-publish-base.outputs.image-digest }}
390392
TAGS: ${{ needs.docker-publish-base.outputs.image-tags }}
391393
ANNOTATIONS: ${{ needs.docker-publish-base.outputs.image-annotations }}

.github/workflows/ci.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ jobs:
8989
- name: "Install uv"
9090
uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0
9191
with:
92-
version: "0.9.4"
92+
version: "0.9.5"
9393

9494
- name: "rustfmt"
9595
run: cargo fmt --all --check
@@ -232,7 +232,7 @@ jobs:
232232

233233
- uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0
234234
with:
235-
version: "0.9.4"
235+
version: "0.9.5"
236236

237237
- name: "Install required Python versions"
238238
run: uv python install
@@ -284,7 +284,7 @@ jobs:
284284

285285
- uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0
286286
with:
287-
version: "0.9.4"
287+
version: "0.9.5"
288288

289289
- name: "Install required Python versions"
290290
run: uv python install
@@ -326,7 +326,7 @@ jobs:
326326
327327
- uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0
328328
with:
329-
version: "0.9.4"
329+
version: "0.9.5"
330330

331331
- name: "Install required Python versions"
332332
run: uv python install
@@ -491,7 +491,7 @@ jobs:
491491
persist-credentials: false
492492
- uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0
493493
with:
494-
version: "0.9.4"
494+
version: "0.9.5"
495495

496496
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
497497
- name: "Add SSH key"

.github/workflows/release.yml

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ jobs:
6868
# we specify bash to get pipefail; it guards against the `curl` command
6969
# failing. otherwise `sh` won't catch that `curl` returned non-0
7070
shell: bash
71-
run: "curl --proto '=https' --tlsv1.2 -LsSf https://github.com/axodotdev/cargo-dist/releases/download/v0.30.0/cargo-dist-installer.sh | sh"
71+
run: "curl --proto '=https' --tlsv1.2 -LsSf https://github.com/axodotdev/cargo-dist/releases/download/v0.30.2/cargo-dist-installer.sh | sh"
7272
- name: Cache dist
7373
uses: actions/upload-artifact@6027e3dd177782cd8ab9af838c04fd81a07f1d47
7474
with:
@@ -168,8 +168,8 @@ jobs:
168168
- custom-build-binaries
169169
- custom-build-docker
170170
- build-global-artifacts
171-
# Only run if we're "publishing", and only if local and global didn't fail (skipped is fine)
172-
if: ${{ always() && needs.plan.outputs.publishing == 'true' && (needs.build-global-artifacts.result == 'skipped' || needs.build-global-artifacts.result == 'success') && (needs.custom-build-binaries.result == 'skipped' || needs.custom-build-binaries.result == 'success') && (needs.custom-build-docker.result == 'skipped' || needs.custom-build-docker.result == 'success') }}
171+
# Only run if we're "publishing", and only if plan, local and global didn't fail (skipped is fine)
172+
if: ${{ always() && needs.plan.result == 'success' && needs.plan.outputs.publishing == 'true' && (needs.build-global-artifacts.result == 'skipped' || needs.build-global-artifacts.result == 'success') && (needs.custom-build-binaries.result == 'skipped' || needs.custom-build-binaries.result == 'success') && (needs.custom-build-docker.result == 'skipped' || needs.custom-build-docker.result == 'success') }}
173173
env:
174174
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
175175
runs-on: "depot-ubuntu-latest-4"
@@ -233,6 +233,10 @@ jobs:
233233
# "host" however must run to completion, no skipping allowed!
234234
if: ${{ always() && needs.host.result == 'success' && (needs.custom-publish-pypi.result == 'skipped' || needs.custom-publish-pypi.result == 'success') }}
235235
runs-on: "depot-ubuntu-latest-4"
236+
permissions:
237+
"attestations": "write"
238+
"contents": "write"
239+
"id-token": "write"
236240
env:
237241
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
238242
steps:
@@ -251,6 +255,15 @@ jobs:
251255
run: |
252256
# Remove the granular manifests
253257
rm -f artifacts/*-dist-manifest.json
258+
- name: Attest
259+
uses: actions/attest-build-provenance@c074443f1aee8d4aeeae555aebba3282517141b2
260+
with:
261+
subject-path: |
262+
artifacts/*.json
263+
artifacts/*.sh
264+
artifacts/*.ps1
265+
artifacts/*.zip
266+
artifacts/*.tar.gz
254267
- name: Create GitHub Release
255268
env:
256269
PRERELEASE_FLAG: "${{ fromJson(needs.host.outputs.val).announcement_is_prerelease && '--prerelease' || '' }}"

.github/workflows/zizmor.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,4 @@ jobs:
2121
persist-credentials: false
2222

2323
- name: Run zizmor
24-
if: false # TODO(konsti): Reactivate once we figured out how to not get rate-limited
2524
uses: zizmorcore/zizmor-action@5ca5fc7a4779c5263a3ffa0e1f693009994446d1 # v0.1.2

0 commit comments

Comments
 (0)