Skip to content

Conversation

@samypr100
Copy link
Collaborator

@samypr100 samypr100 commented Feb 9, 2025

Summary

Similar to #8685, this adds attestations for uv release artifacts.

The changes on this PR would add attestations for

  • dist-manifest.json
  • uv-installer.ps1
  • uv-installer.sh
  • All *.tar.gz and *.zip uv binary files

Test Plan

(clarifying note: I'm aware this file is managed cargo dist and this will not work without allow-dirty at this time)

Currently cargo dist targets generation in build_local_artifacts which is not used here, plus we'd ideally want to attest the GH downloads / artifacts. (edit: fixed by axodotdev/cargo-dist#2000)

At a glance, this release workflow seems to work successfully:

e.g. Example Run: https://github.com/samypr100/uv/actions/runs/13229100555
e.g. Example Release: https://github.com/samypr100/uv/releases/tag/0.5.29

@samypr100 samypr100 force-pushed the release-attestations branch 3 times, most recently from 7e04715 to 7b8e78f Compare February 9, 2025 20:52
@zanieb zanieb self-assigned this Feb 9, 2025
@zanieb
Copy link
Member

zanieb commented Apr 16, 2025

cc @Gankra — seems low priority but want to make sure you're aware of this.

@zanieb zanieb removed their assignment Apr 16, 2025
@Gankra Gankra self-assigned this Apr 16, 2025
@Gankra Gankra self-requested a review April 16, 2025 20:36
@Gankra
Copy link
Contributor

Gankra commented Apr 16, 2025

idle first thought: we can "just" inline the attestation stuff into the build-binaries subscript, in the same way that it builds tarballs in the exact format cargo-dist "would" if it was running the tasks.

tedious but not the worst.

@samypr100
Copy link
Collaborator Author

samypr100 commented Apr 16, 2025

I also left a proposal here from a pseudo working implementation I started locally, axodotdev/cargo-dist#1754

Although not sure the best approach now with the fork scenario

@samypr100
Copy link
Collaborator Author

Given we're on dist 0.30 now (which has axodotdev/cargo-dist#2000), we can revive this

@samypr100 samypr100 marked this pull request as ready for review September 22, 2025 22:40
@samypr100 samypr100 force-pushed the release-attestations branch from 0264fe6 to d6cfd84 Compare October 8, 2025 01:17
@samypr100
Copy link
Collaborator Author

@Gankra this should be finally ready

@samypr100 samypr100 force-pushed the release-attestations branch from d6cfd84 to 37de3a1 Compare October 28, 2025 01:06
@Gankra Gankra force-pushed the release-attestations branch from 37de3a1 to b498654 Compare October 29, 2025 19:44
@Gankra
Copy link
Contributor

Gankra commented Oct 29, 2025

Apologies for the delay, I'm cutting a cargo-dist release to get your full changes (0.30.0 only had the overly broad ones).

@Gankra
Copy link
Contributor

Gankra commented Oct 29, 2025

axodotdev/cargo-dist#2178

Copy link
Member

@woodruffw woodruffw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome 🙂

@Gankra
Copy link
Contributor

Gankra commented Oct 29, 2025

The PR is now rebased and uses the latest cargo-dist that makes zizmor happy

@Gankra Gankra merged commit f3d3203 into astral-sh:main Oct 30, 2025
187 of 189 checks passed
@samypr100 samypr100 deleted the release-attestations branch October 30, 2025 00:43
Gankra added a commit that referenced this pull request Oct 30, 2025
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Nov 3, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [astral-sh/uv](https://github.com/astral-sh/uv) | patch | `0.9.5` -> `0.9.7` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>astral-sh/uv (astral-sh/uv)</summary>

### [`v0.9.7`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#097)

[Compare Source](astral-sh/uv@0.9.6...0.9.7)

Released on 2025-10-30.

##### Enhancements

- Add Windows x86-32 emulation support to interpreter architecture checks ([#&#8203;13475](astral-sh/uv#13475))
- Improve readability of progress bars ([#&#8203;16509](astral-sh/uv#16509))
- Add GitHub attestations for uv release artifacts ([#&#8203;11357](astral-sh/uv#11357))

##### Bug fixes

- Drop terminal coloring from `uv auth token` output ([#&#8203;16504](astral-sh/uv#16504))
- Don't use UV\_LOCKED to enable `--check` flag ([#&#8203;16521](astral-sh/uv#16521))

### [`v0.9.6`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#096)

[Compare Source](astral-sh/uv@0.9.5...0.9.6)

Released on 2025-10-29.

This release contains an upgrade to Astral's fork of `async_zip`, which addresses potential sources of ZIP parsing differentials between uv and other Python packaging tooling. See [GHSA-pqhf-p39g-3x64](GHSA-pqhf-p39g-3x64) for additional details.

##### Security

- Address ZIP parsing differentials ([GHSA-pqhf-p39g-3x64](GHSA-pqhf-p39g-3x64))

##### Python

- Upgrade GraalPy to 25.0.1 ([#&#8203;16401](astral-sh/uv#16401))

##### Enhancements

- Add `--clear` to `uv build` to remove old build artifacts ([#&#8203;16371](astral-sh/uv#16371))
- Add `--no-create-gitignore` to `uv build` ([#&#8203;16369](astral-sh/uv#16369))
- Do not error when a virtual environment directory cannot be removed due to a busy error ([#&#8203;16394](astral-sh/uv#16394))
- Improve hint on `pip install --system` when externally managed ([#&#8203;16392](astral-sh/uv#16392))
- Running `uv lock --check` with outdated lockfile will print that `--check` was passed, instead of `--locked`  ([#&#8203;16322](astral-sh/uv#16322))
- Update `uv init` template for Maturin ([#&#8203;16449](astral-sh/uv#16449))
- Improve ordering of Python sources in logs ([#&#8203;16463](astral-sh/uv#16463))
- Restore DockerHub release images and annotations ([#&#8203;16441](astral-sh/uv#16441))

##### Bug fixes

- Check for matching Python implementation during `uv python upgrade` ([#&#8203;16420](astral-sh/uv#16420))
- Deterministically order `--find-links` distributions ([#&#8203;16446](astral-sh/uv#16446))
- Don't panic in `uv export --frozen` when the lockfile is outdated ([#&#8203;16407](astral-sh/uv#16407))
- Fix root of `uv tree` when `--package` is used with circular dependencies ([#&#8203;15908](astral-sh/uv#15908))
- Show package list with `pip freeze --quiet` ([#&#8203;16491](astral-sh/uv#16491))
- Limit `uv auth login pyx.dev` retries to 60s ([#&#8203;16498](astral-sh/uv#16498))
- Add an empty group with `uv add --group ... -r ...` ([#&#8203;16490](astral-sh/uv#16490))

##### Documentation

- Update docs for maturin build backend init template ([#&#8203;16469](astral-sh/uv#16469))
- Update docs to reflect previous changes to signal forwarding semantics ([#&#8203;16430](astral-sh/uv#16430))
- Add instructions for installing via MacPorts ([#&#8203;16039](astral-sh/uv#16039))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNjkuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE2OS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Nov 10, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [astral-sh/uv](https://github.com/astral-sh/uv) | patch | `0.9.7` -> `0.9.8` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>astral-sh/uv (astral-sh/uv)</summary>

### [`v0.9.8`](https://github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#098)

[Compare Source](astral-sh/uv@0.9.7...0.9.8)

Released on 2025-11-07.

##### Enhancements

- Accept multiple packages in `uv export` ([#&#8203;16603](astral-sh/uv#16603))
- Accept multiple packages in `uv sync` ([#&#8203;16543](astral-sh/uv#16543))
- Add a `uv cache size` command ([#&#8203;16032](astral-sh/uv#16032))
- Add prerelease guidance for build-system resolution failures ([#&#8203;16550](astral-sh/uv#16550))
- Allow Python requests to include `+gil` to require a GIL-enabled interpreter ([#&#8203;16537](astral-sh/uv#16537))
- Avoid pluralizing 'retry' for single value ([#&#8203;16535](astral-sh/uv#16535))
- Enable first-class dependency exclusions ([#&#8203;16528](astral-sh/uv#16528))
- Fix inclusive constraints on available package versions in resolver errors ([#&#8203;16629](astral-sh/uv#16629))
- Improve `uv init` error for invalid directory names ([#&#8203;16554](astral-sh/uv#16554))
- Show help on `uv build -h` ([#&#8203;16632](astral-sh/uv#16632))
- Include the Python variant suffix in "Using Python ..." messages ([#&#8203;16536](astral-sh/uv#16536))
- Log most recently modified file for cache-keys ([#&#8203;16338](astral-sh/uv#16338))
- Update Docker builds to use nightly Rust toolchain with musl v1.2.5 ([#&#8203;16584](astral-sh/uv#16584))
- Add GitHub attestations for uv release artifacts ([#&#8203;11357](astral-sh/uv#11357))

##### Configuration

- Expose `UV_NO_GROUP` as an environment variable ([#&#8203;16529](astral-sh/uv#16529))
- Add `UV_NO_SOURCES` as an environment variable ([#&#8203;15883](astral-sh/uv#15883))

##### Bug fixes

- Allow `--check` and `--locked` to be used together in `uv lock` ([#&#8203;16538](astral-sh/uv#16538))
- Allow for unnormalized names in the METADATA file ([#&#8203;16547](astral-sh/uv#16547)) ([#&#8203;16548](astral-sh/uv#16548))
- Fix missing value\_type for `default-groups` in schema ([#&#8203;16575](astral-sh/uv#16575))
- Respect multi-GPU outputs in `nvidia-smi` ([#&#8203;15460](astral-sh/uv#15460))
- Fix DNS lookup errors in Docker containers ([#&#8203;8450](astral-sh/uv#8450))

##### Documentation

- Fix typo in uv tool list doc ([#&#8203;16625](astral-sh/uv#16625))
- Note `uv pip list` name normalization in docs ([#&#8203;13210](astral-sh/uv#13210))

##### Other changes

- Update Rust toolchain to 1.91 and MSRV to 1.89 ([#&#8203;16531](astral-sh/uv#16531))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNzMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE3My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
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.

4 participants