Commit Graph

617 Commits

Author SHA1 Message Date
renovate[bot] 8373261fe7
Update actions/download-artifact action to v4.3.0 (#13651)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[actions/download-artifact](https://redirect.github.com/actions/download-artifact)
| action | minor | `v4.2.1` -> `v4.3.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>actions/download-artifact (actions/download-artifact)</summary>

###
[`v4.3.0`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.3.0)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.2.1...v4.3.0)

#### What's Changed

- feat: implement new `artifact-ids` input by
[@&#8203;GrantBirki](https://redirect.github.com/GrantBirki) in
[https://github.com/actions/download-artifact/pull/401](https://redirect.github.com/actions/download-artifact/pull/401)
- Fix workflow example for downloading by artifact ID by
[@&#8203;joshmgross](https://redirect.github.com/joshmgross) in
[https://github.com/actions/download-artifact/pull/402](https://redirect.github.com/actions/download-artifact/pull/402)
- Prep for v4.3.0 release by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/download-artifact/pull/404](https://redirect.github.com/actions/download-artifact/pull/404)

#### New Contributors

- [@&#8203;GrantBirki](https://redirect.github.com/GrantBirki) made
their first contribution in
[https://github.com/actions/download-artifact/pull/401](https://redirect.github.com/actions/download-artifact/pull/401)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4.2.1...v4.3.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4xNi4wIiwidXBkYXRlZEluVmVyIjoiNDAuMTYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW50ZXJuYWwiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-26 14:30:01 +02:00
renovate[bot] 9f0d83c7df
Update acj/freebsd-firecracker-action action to v0.4.0 (#13649)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[acj/freebsd-firecracker-action](https://redirect.github.com/acj/freebsd-firecracker-action)
| action | minor | `v0.3.0` -> `v0.4.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>acj/freebsd-firecracker-action
(acj/freebsd-firecracker-action)</summary>

###
[`v0.4.0`](https://redirect.github.com/acj/freebsd-firecracker-action/releases/tag/v0.4.0)

[Compare
Source](https://redirect.github.com/acj/freebsd-firecracker-action/compare/v0.3.0...v0.4.0)

[Firecracker
1.12.0](https://redirect.github.com/firecracker-microvm/firecracker/releases/tag/v1.12.0)
[FreeBSD 14.3-STABLE](https://www.freebsd.org/releases/14.3R/relnotes/)

Bug fixes:

- Wait for Firecracker VM to exit before returning control to the
calling workflow

Changes:

-   Upgrade CI workflow to Ubuntu 24.04

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4xNi4wIiwidXBkYXRlZEluVmVyIjoiNDAuMTYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW50ZXJuYWwiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-26 13:32:46 +02:00
Geoffrey Thomas 5b25e896b5
Update uraimo/run-on-arch-action to v3.0.1 (latest) (#13603)
This one claims in its README to resolve segfaults.

Also sync the commented-out workflow to match the uncommented ones.

## Test Plan

Checks passed in #13600 already....
2025-05-24 11:07:48 -04:00
konsti 30be27beb1
No GHA token for cross arch tests (#13599) 2025-05-22 21:11:38 +02:00
samypr100 3483f1d8b3
fix: format uv-trampoline for 2024 edition (#13519)
## Summary

Follow on to https://github.com/astral-sh/uv/pull/13516

Ensure uv-trampoline is formatted after switching to 2024 edition.
2025-05-18 20:19:27 -04:00
Zanie Blue 4b7f5f1103
Update Python releases (#13509) 2025-05-17 13:19:20 -05:00
konsti dfa1b958ac
Issue template: Please include the complete error message (#13451)
We're getting a number of user reports where we could have helped if we
were just seeing the full error message. If we're not getting an MRE, we
should at least urge users to copy the _full_ error they see on screen.


![image](https://github.com/user-attachments/assets/45c72990-e068-4706-abb6-591962a865c6)
2025-05-15 07:36:08 -05:00
samypr100 395039afd1
feat(docker): add 3.14 beta images to uv docker (#13390)
## Summary

Now that Python 3.14 first beta is out, I think it's worth adding
support for the official upstream RC images.

Once 3.14 is released, we can remove the `-rc-` infix from the images we
pull from.

## Test Plan

Upstream images verified to be functional with uv.
2025-05-13 20:27:09 +02:00
renovate[bot] a0b27c7cff
Update fedora Docker tag to v43 (#13165)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| fedora | container | major | `42` -> `43` |

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-13 14:47:49 +02:00
konsti 87c8ec8a85
Fix ecosystem checks by pinning Git refs (#13401)
https://github.com/pallets/flask/pull/5727 broke our ecosystem checks,
for now we're pinning the Git refs to unblock CI.
2025-05-12 11:45:25 +02:00
Bryan Lee 8d6d616791
Update issue templates to use `uv self version` command (#13370)
<!--
Thank you for contributing to uv! To help us out with reviewing, please
consider the following:

- Does this pull request include a summary of the change? (See below.)
- Does this pull request include a descriptive title?
- Does this pull request include references to any relevant issues?
-->

## Summary

<!-- What's the purpose of the change? What does it do, and why? -->

This PR updates the issue templates to recommend using the `uv self
version` command instead of `uv version` for retrieving uv's own version
information. The `uv version` command is intended to show the current
project's version (from pyproject.toml), not the uv tool version, which
leads to confusion when users try to report issues.

## Test Plan

<!-- How was it tested? -->
n/a
2025-05-09 16:41:24 -05:00
Tim Felgentreff 878c2acdf3
Add downloading of GraalPy (#13172)
## Summary

This adds GraalPy download metadata so that `uv python install graalpy`
works. See https://github.com/astral-sh/uv/issues/13114

## Test Plan

The existing integration test was changed to test this functionality.
2025-05-06 11:02:27 -05:00
renovate[bot] 1cfc67d266
Update Artifact GitHub Actions dependencies (#13290)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| actions/download-artifact | action | digest | `95815c3` -> `d3f86a1` |
|
[actions/download-artifact](https://redirect.github.com/actions/download-artifact)
| action | minor | `v4.2.1` -> `v4.3.0` |

---

### Release Notes

<details>
<summary>actions/download-artifact (actions/download-artifact)</summary>

###
[`v4.3.0`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.3.0)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.2.1...v4.3.0)

#### What's Changed

- feat: implement new `artifact-ids` input by
[@&#8203;GrantBirki](https://redirect.github.com/GrantBirki) in
[https://github.com/actions/download-artifact/pull/401](https://redirect.github.com/actions/download-artifact/pull/401)
- Fix workflow example for downloading by artifact ID by
[@&#8203;joshmgross](https://redirect.github.com/joshmgross) in
[https://github.com/actions/download-artifact/pull/402](https://redirect.github.com/actions/download-artifact/pull/402)
- Prep for v4.3.0 release by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/download-artifact/pull/404](https://redirect.github.com/actions/download-artifact/pull/404)

#### New Contributors

- [@&#8203;GrantBirki](https://redirect.github.com/GrantBirki) made
their first contribution in
[https://github.com/actions/download-artifact/pull/401](https://redirect.github.com/actions/download-artifact/pull/401)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4.2.1...v4.3.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-05 09:52:26 +00:00
renovate[bot] 12a978cd34
Update astral-sh/setup-uv action to v6.0.1 (#13291)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [astral-sh/setup-uv](https://redirect.github.com/astral-sh/setup-uv) |
action | patch | `v6.0.0` -> `v6.0.1` |

---

### Release Notes

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

###
[`v6.0.1`](https://redirect.github.com/astral-sh/setup-uv/releases/tag/v6.0.1):
🌈 Fix default cache dependency glob

[Compare
Source](https://redirect.github.com/astral-sh/setup-uv/compare/v6.0.0...v6.0.1)

##### Changes

The new default in v6 used illegal patterns and therefore didn't match
requirements files. This is now fixed.

##### 🐛 Bug fixes

- Fix default cache dependency glob
[@&#8203;eifinger](https://redirect.github.com/eifinger)
([#&#8203;388](https://redirect.github.com/astral-sh/setup-uv/issues/388))

##### 🧰 Maintenance

- chore: update known checksums for 0.6.17
@&#8203;[github-actions\[bot\]](https://redirect.github.com/apps/github-actions)
([#&#8203;384](https://redirect.github.com/astral-sh/setup-uv/issues/384))

##### ⬆️ Dependency updates

- Bump dependencies
[@&#8203;eifinger](https://redirect.github.com/eifinger)
([#&#8203;389](https://redirect.github.com/astral-sh/setup-uv/issues/389))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-05 11:38:56 +02:00
konsti 96cfca1c8f
Move static feature out of perf features (#13265)
#5577 fixed a bug on macos due to dynamically linking lzma/xz through
static linking. In #7686, this feature was moved to the performance
category.

This PR moves the `xz2/static` back to the general default features,
and, inspired by https://github.com/Homebrew/homebrew-core/pull/222211,
it structures and documents the feature flags cleaner.

We need to take care that this feature does not accidentally disable
features we want.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2025-05-02 15:56:40 +00:00
Meitar Reihan 5ee54b4fa3
minify and filter embed managed pythons json on compile time (#12967)
## Summary

In #10939 I added the generated
`crates/uv-python/src/download-metadata-minified.json` file which is a
minified version of `crates/uv-python/download-metadata.json`.

The main reason for this PR is to avoid bloating the git objects as this
is a single-line file.

As a bonus, I also filtered the embed json to include only the versions
for the compiled target. Which should improve the binary size and
performance by a bit.

## Test Plan

<!-- How was it tested? -->
2025-04-30 15:51:03 -04:00
renovate[bot] f8f1b9c505
Update taiki-e/install-action action to v2.50.3 (#13161) 2025-04-28 08:48:37 -04:00
renovate[bot] cfe82dc22a
Update EmbarkStudios/cargo-deny-action action to v2 (#13164)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[EmbarkStudios/cargo-deny-action](https://redirect.github.com/EmbarkStudios/cargo-deny-action)
| action | major | `v1` -> `v2.0.11` |

---

### Release Notes

<details>
<summary>EmbarkStudios/cargo-deny-action
(EmbarkStudios/cargo-deny-action)</summary>

###
[`v2.0.11`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.11)

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.10...v2.0.11)

#### \[0.18.2] - 2025-03-10

##### Added

-
[PR#753](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/753)
resolved
[#&#8203;752](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/752)
by adding back the `advisories.unmaintained` config option. See the
[docs](https://embarkstudios.github.io/cargo-deny/checks/advisories/cfg.html#the-unmaintained-field-optional)
for how it can be used. The default matches the current behavior, which
is to error on any `unmaintained` advisory, but adding `unmaintained =
"workspace"` to the `[advisories]` table will mean unmaintained
advisories will only error if the crate is a direct dependency of your
workspace.

#### \[0.18.1] - 2025-02-27

##### Fixed

-
[PR#749](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/749)
updated `krates` to pull in the fix for
[EmbarkStudios/krates#100](https://redirect.github.com/EmbarkStudios/krates/issues/100).

###
[`v2.0.10`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.10)

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.9...v2.0.10)

-
[PR#96](https://redirect.github.com/EmbarkStudios/cargo-deny-action/pull/96)
resolved
[#&#8203;94](https://redirect.github.com/EmbarkStudios/cargo-deny-action/issues/94)
by switching to the directory the manifest path is located in and doing
`rustup toolchain install` if `rustup show` failed due to any reason

###
[`v2.0.9`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.9):
Release 2.0.9 - cargo-deny 0.18.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.8...v2.0.9)

-
[`d8395c1`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/commit/d8395c1)
removed the rustup update.

###
[`v2.0.8`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.8)

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.7...v2.0.8)

-
[PR#93](https://redirect.github.com/EmbarkStudios/cargo-deny-action/pull/93)
pins to a hash instead of tag, avoiding future breakage from eg. rustup
changes.

###
[`v2.0.7`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.7):
Release 2.0.7 - cargo-deny 0.18.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.6...v2.0.7)

-
[PR#92](https://redirect.github.com/EmbarkStudios/cargo-deny-action/pull/92)
fixed an issue introduced by the latest rustup release.

###
[`v2.0.6`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.6):
Release 2.0.6 - cargo-deny 0.18.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.5...v2.0.6)

##### Changed

-
[PR#746](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/746)
changed the directory naming of advisory databases,
[again](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/745),
so the name uses the last path component and a different, but also
stable, hashing algorithm. Eg. the default
`https://github.com/rustsec/advisory-db` will now be placed in
`$CARGO_HOME/advisory-dbs/advisory-db-3157b0e258782691`.
-
[PR#746](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/746)
changed the MSRV to 1.85.0 and uses edition 2024.

##### Fixed

-
[PR#746](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/746)
fixes an issue when using cargo 1.85.0 where source urls were not being
properly assigned to crates.io due to the constant being used no longer
matching the new path used in cargo 1.85.0 causing eg. workspace
dependency checks to fail.

###
[`v2.0.5`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.5):
Release 2.0.5 - cargo-deny 0.17.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.4...v2.0.5)

##### Changed

-
[PR#745](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/745)
updated `tame-index` to
[0.18.0](https://redirect.github.com/EmbarkStudios/tame-index/releases/tag/0.18.0)
so that cargo 1.85.0 is transparently supported along with older cargo
versions.
-
[PR#745](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/745)
now uses the same stable hashing as cargo 1.85.0 for the advisory
databases, which changes their path, but will notably now be the same
across all host platforms.

###
[`v2.0.4`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.4):
Release 2.0.4 - cargo-deny 0.16.3

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.3...v2.0.4)

- Update base image to rust 1.83.0 so that version 4 lockfiles are
supported with no config changes

###
[`v2.0.3`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.3):
Release 2.0.3 - cargo-deny 0.16.3

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.2...v2.0.3)

##### Changed

-
[PR#721](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/721)
updated `rust-version` to 1.81.0 to accurately reflect the minimum rust
version required to compile, resolving
[#&#8203;720](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/720).
-
[PR#722](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/722)
updated the SPDX license list to 3.25.0.

##### Fixed

-
[PR#726](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/726)
resolved
[#&#8203;725](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/725)
by adding the `unnecessary-skip` diagnostic, emitted when there is a
`skip` configured for a crate that only has one version in the graph.

###
[`v2.0.2`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.2):
Release 2.0.2 - cargo-deny 0.16.2

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2.0.1...v2.0.2)

##### Fixed

-
[PR#703](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/703)
resolved
[#&#8203;696](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/696)
by no longer emitting errors when failing to deserialize deprecated
fields, and removed some lingering documentation that wasn't removed in
[PR#611](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/611).
-
[PR#719](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/719)
updated to `krates` -> 0.17.5, fixing an issue where `cargo-deny` could
[panic](https://redirect.github.com/EmbarkStudios/krates/issues/97) due
to [incorrectly
resolving](https://redirect.github.com/EmbarkStudios/krates/issues/84)
features for different versions of the same crate referenced by a single
crate.
-
[PR#719](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/719)
resolved
[#&#8203;706](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/706)
by removing a warning issued when users use ignored scheme modifiers for
source urls.
-
[PR#719](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/719)
resolved
[#&#8203;718](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/718)
by updating the book with missing arguments.

##### Added

-
[PR#715](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/715)
resolved
[#&#8203;714](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/714)
by adding support for Edition 2024. Thanks
[@&#8203;kpcyrd](https://redirect.github.com/kpcyrd)!
-
[PR#710](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/710)
resolved
[#&#8203;708](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/708)
by allowing for unpublished workspace crates to be excluded from the
dependency graph that checks are run against, either via the
`--exclude-unpublished` CLI argument or the `graph.exclude-unpublished`
config field. Thanks
[@&#8203;Tastaturtaste](https://redirect.github.com/Tastaturtaste)!

##### Changed

-
[PR#711](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/711)
updated `goblin` -> 0.9.2
-
[PR#713](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/713)
updated various crates, notably `rustsec` -> 0.30.

###
[`v2.0.1`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.1):
Release 2.0.1 - cargo-deny 0.16.1

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v2...v2.0.1)

##### Fixed

-
[PR#691](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/691)
fixed an issue where workspace dependencies that used the current dir
'.' path component would incorrectly trigger the
`unused-workspace-dependency` lint.

###
[`v2.0.0`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v2.0.0):
Release 2.0.0 - cargo-deny 0.16.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.6.3...v2)

#### `Action`

##### Added

-
[PR#78](https://redirect.github.com/EmbarkStudios/cargo-deny-action/pull/78)
added SSH support, thanks
[@&#8203;nagua](https://redirect.github.com/nagua)!

##### Changed

- This release includes breaking changes in cargo-deny, so this release
begins the `v2` tag, using `v1` will be stable but not follow future
`cargo-deny` releases.

#### `cargo-deny`

##### Removed

-
[PR#681](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/681)
finished the deprecation introduced in
[PR#611](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/611),
making the usage of the deprecated fields into errors.

##### `[advisories]`

The following fields have all been removed in favor of denying all
advisories by default. To ignore an advisory the
[`ignore`](https://embarkstudios.github.io/cargo-deny/checks/advisories/cfg.html#the-ignore-field-optional)
field can be used as before.

-   `vulnerability` - Vulnerability advisories are now `deny` by default
-   `unmaintained` - Unmaintained advisories are now `deny` by default
-   `unsound` - Unsound advisories are now `deny` by default
-   `notice` - Notice advisories are now `deny` by default
- `severity-threshold` - The severity of vulnerabilities is now
irrelevant

##### `[licenses]`

The following fields have all been removed in favor of denying all
licenses that are not explicitly allowed via either
[`allow`](https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html#the-allow-field-optional)
or
[`exceptions`](https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html#the-exceptions-field-optional).

- `unlicensed` - Crates whose license(s) cannot be confidently
determined are now always errors. The
[`clarify`](https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html#the-clarify-field-optional)
field can be used to help cargo-deny determine the license.
- `allow-osi-fsf-free` - The OSI/FSF Free attributes are now irrelevant,
only whether it is explicitly allowed.
- `copyleft` - The copyleft attribute is now irrelevant, only whether it
is explicitly allowed.
-   `default` - The default is now `deny`.
- `deny` - All licenses are now denied by default, this field added
nothing.

##### Changed

-
[PR#685](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/685)
follows up on
[PR#673](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/673),
moving the fields that were added to their own separate
[`bans.workspace-dependencies`](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-workspace-dependencies-field-optional)
section. This is an unannounced breaking change but is fairly minor and
0.15.0 was never released on github actions so the amount of people
affected by this will be (hopefully) small. This also makes the
workspace duplicate detection off by default since the field is
optional, *but* makes it so that if not specified workspace duplicates
are now `deny` instead of `warn`.

##### Fixed

-
[PR#685](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/685)
resolved
[#&#8203;682](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/682)
by adding the `include-path-dependencies` field, allowing path
dependencies to be ignored if it is `false`.

###
[`v1.6.3`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.6.3):
Release 1.6.3 - cargo-deny 0.14.21

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.6.2...v1.6.3)

##### Fixed

-
[PR#643](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/643)
resolved
[#&#8203;629](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/629)
by making the hosted git (github, gitlab, bitbucket) org/user name
comparison case-insensitive. Thanks
[@&#8203;pmnlla](https://redirect.github.com/pmnlla)!
-
[PR#649](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/649)
fixed an issue where depending on the same crate multiple times by using
different `cfg()/triple` targets could cause features to be resolved
incorrectly and thus crates to be not pulled into the graph used for
checking.

#### \[0.14.20] - 2024-03-23

##### Fixed

-
[PR#642](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/642)
resolved
[#&#8203;641](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/641)
by pinning `gix-transport` (and its unique dependencies) to 0.41.2 as a
workaround for `cargo install` not using the lockfile. See [this
issue](https://redirect.github.com/Byron/gitoxide/issues/1328) for more
information.

###
[`v1.6.2`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.6.2):
Release 1.6.2 - cargo-deny 0.14.19

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.6.1...v1.6.2)

##### Changed

-
[PR#639](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/639)
updated tame-index to avoid an error if you don't used `--locked`.

#### \[0.14.18] - 2024-03-21

##### Fixed

-
[PR#638](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/638)
resolved
[#&#8203;636](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/636)
by updating `krates`.

#### \[0.14.17] - 2024-03-17

##### Changed

-
[PR#631](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/631)
improved the diagnostic for when the yank check fails due to some issue
with retrieving or reading the index information.
-
[PR#633](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/633)
updated `gix` -> 0.60.

###
[`v1.6.1`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.6.1)

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.6.0...v1.6.1)

##### Fixed

-
[PR#626](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/626)
resolved
[#&#8203;625](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/625)
by explicitly checking that a license identified as Pixar was actually
(probably) the Pixar license, instead of a normal Apache-2.0 license.

###
[`v1.6.0`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.6.0)

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.15...v1.6.0)

#### action changes

- Color output is now always enabled so that colors show up in the
action output.

#### 0.14.15

##### Added

-
[PR#618](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/618)
added metadata notes to diagnostics when a license is rejected, as well
as removing span information for accepted licenses unless the log level
is `info` or higher to make the diagnostic clearer by default.

#### 0.14.14

##### Fixed

-
[PR#617](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/617)
resolved
[#&#8203;576](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/576)
by updating the SPDX license list to 3.23.

#### 0.14.13

##### Fixed

-
[PR#615](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/615)
fixed an issue introduced in
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
where the various `bans` diagnostic codes could not have their lint
level changed via the CLI. It also introduced the `deprecated`
diagnostic code.

#### 0.14.12

##### Changed

-
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
did a major refactor of configuration, both how it is deserialized and
changing (hopefully improving) many options.
-
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
moved `targets`, `exclude`, `all-features`, `features`,
`no-default-features`, and `exclude` into the `[graph]` table.
-
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
moved `feature-depth` into the `[output]` table.

##### Added

-
[PR#613](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/613)
added support for [basic shell
expansion](https://embarkstudios.github.io/cargo-deny/checks/advisories/cfg.html#the-db-path-field-optional)
to `advisories.db-path`, which expands support beyond just `~` to
include environment variable expansion.

##### Fixed

-
[PR#601](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/601)
resolved
[#&#8203;600](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/600)
by outputting the correct spans when a license was both allowed and
denied.
-
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
resolved
[#&#8203;264](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/264)
be replacing `toml` and `serde` with `toml-span`.
-
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
resolved
[#&#8203;539](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/539)
by simplifying the very common `name = "<crate_name>", version =
"<requirements>"` used to target specific crates into either a plain
[package spec
string](https://embarkstudios.github.io/cargo-deny/checks/cfg.html#string-format)
or the simpler `crate = "<package spec>"`.
-
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
resolved
[#&#8203;578](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/578)
by adding a `reason = "<reason>"` field to *many* fields within the
configuration that are provided in diagnostics. `[bans.deny]` also has
an additional `use-instead = "<url/crate_name>"`.
[PR#610](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/610)
did this for the `advisories.ignore` field.
-
[PR#605](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/605)
resolved
[#&#8203;579](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/579)
by allowing yanked crates to be ignored by specifying a
[PackageSpec](https://embarkstudios.github.io/cargo-deny/checks/cfg.html#package-specs)
in the `[advisories.ignore]` array.

##### Deprecated

-
[PR#606](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/606)
and
[PR#611](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/611)
together deprecated several fields listed below. See
[PR#611](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/611)
for how to change your config to opt-in to the new behavior that will
become the default when the deprecated fields are removed in a future
minor version.
    -   `[advisories]`
        -   `vulnerability`
        -   `unmaintained`
        -   `unsound`
        -   `notice`
        -   `severity-threshold`
    -   `[licenses]`
        -   `unlicensed`
        -   `allow-osi-fsf-free`
        -   `copyleft`
        -   `default`
        -   `deny`

###
[`v1.5.15`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.15):
Release 1.5.15 - cargo-deny 0.14.11

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.14...v1.5.15)

##### Fixed

- Resolved
[https://github.com/EmbarkStudios/cargo-deny-action/issues/71](https://redirect.github.com/EmbarkStudios/cargo-deny-action/issues/71)
that was introduced in the previous release.

###
[`v1.5.14`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.14):
Release 1.5.14 - cargo-deny 0.14.11

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.13...v1.5.14)

##### Added

- Added the `manifest-path` key as a shorthand for doing `arguments:
--manifest-path <path>`

###
[`v1.5.13`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.13):
Release 1.5.13 - cargo-deny 0.14.11

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.12...v1.5.13)

##### Fixed

-
[PR#599](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/599)
resolved
[#&#8203;488](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/488)
by treating git and path sources differently. Thanks
[@&#8203;kpreid](https://redirect.github.com/kpreid)!

###
[`v1.5.12`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.12):
Release 1.5.12 - cargo-deny 0.14.10

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.11...v1.5.12)

##### Fixed

-
[PR#596](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/596)
updated `krates` *again* to pull in
[krates#77](https://redirect.github.com/EmbarkStudios/krates/pull/77).

###
[`v1.5.11`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.11):
Release 1.5.11 - cargo-deny 0.14.9

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.10...v1.5.11)

##### Fixed

-
[PR#594](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/594)
updated `krates` *again* to pull in
[krates#75](https://redirect.github.com/EmbarkStudios/krates/pull/75).

###
[`v1.5.10`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.10):
Release 1.5.10 - cargo-deny 0.14.8

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.9...v1.5.10)

##### Fixed

-
[PR#592](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/592)
updated `krates` *again* to pull in
[krates#73](https://redirect.github.com/EmbarkStudios/krates/pull/73).

###
[`v1.5.9`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.9):
Release 1.5.9 - cargo-deny 0.14.7

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.8...v1.5.9)

##### Fixed

-
[PR#591](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/591)
updated `krates` *again* to pull in
[krates#71](https://redirect.github.com/EmbarkStudios/krates/pull/71).

###
[`v1.5.8`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.8):
Release 1.5.8 - cargo-deny 0.14.6

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.7...v1.5.8)

##### Fixed

-
[PR#590](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/590)
updated `krates` to fix an issue with crates that directly have a
dependency on 2 or more versions of the same crate.

##### Added

-
[PR#590](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/590)
resolved
[#&#8203;405](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/405)
by emitting warnings when a `wrapper` crate for a banned crate does not
have a dependency on that crate.

##### Changed

-
[PR#591](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/591)
updated `gix` and `tame-index`.

###
[`v1.5.7`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.7):
Release 1.5.7 - cargo-deny 0.14.5

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.6...v1.5.7)

##### Fixed

-
[PR#588](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/588)
resolved an issue introduced in \[0.14.4] where features that reference
dev-only dependencies in non-workspace crates would cause a
[panic](https://redirect.github.com/EmbarkStudios/krates/issues/66).

###
[`v1.5.6`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.6):
Release 1.5.6 - cargo-deny 0.14.4

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.5...v1.5.6)

##### Fixed

-
[PR#586](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/586)
resolved 2 issues with crate graph creation, see
[krates#60](https://redirect.github.com/EmbarkStudios/krates/issues/60)
and
[krates#64](https://redirect.github.com/EmbarkStudios/krates/issues/64)
for more details.

###
[`v1.5.5`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.5):
Release 1.5.5 - cargo-deny 0.14.2

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.4...v1.5.5)

##### Added

-
[PR#545](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/545)
added the ability to specify additional license exceptions via
[additional configuration
files](https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html#additional-exceptions-configuration-file).
-
[PR#549](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/549)
added the
[`bans.build`](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-build-field-optional)
configuration option, opting in to checking for [file
extensions](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-script-extensions-field-optional),
[native
executables](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-executables-field-optional),
and [interpreted
scripts](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-interpreted-field-optional).
This resolved
[#&#8203;43](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/43).

##### Changed

-
[PR#557](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/557)
introduced changes to how
[`dev-dependencies`](https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#development-dependencies)
are handled. By default, crates that are only used as dev-dependencies
(ie, there are no normal nor build dependency edges linking them to
other crates) will no longer be considered when checking for
[`multiple-versions`](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-multiple-versions-field-optional)
violations. This can be re-enabled via the
[`bans.multiple-versions-include-dev`](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-multiple-versions-include-dev-field-optional)
config field. Additionally, licenses are no longer checked for
`dev-dependencies`, but can be re-enabled via
[`licenses.include-dev`](https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html#the-include-dev-field-optional)
the config field. `dev-dependencies` can also be completely disabled
altogether, but this applies to all checks, including `advisories` and
`sources`, so is not enabled by default. This behavior can be enabled by
using the
[`exclude-dev`](https://embarkstudios.github.io/cargo-deny/checks/cfg.html#the-exclude-dev-field-optional)
field, or the `--exclude-dev` command line flag. This change resolved
[#&#8203;322](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/322),
[#&#8203;329](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/329),
[#&#8203;413](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/413)
and
[#&#8203;497](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/497).

##### Fixed

-
[PR#549](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/549)
fixed
[#&#8203;548](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/548)
by correctly locating cargo registry indices from an git ssh url.
-
[PR#549](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/549)
fixed
[#&#8203;552](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/552)
by correctly handling signal interrupts and removing the advisory-dbs
lock file.
-
[PR#549](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/549)
fixed
[#&#8203;553](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/553)
by adding the `native-certs` feature flag that can enable the OS native
certificate store.

##### Deprecated

-
[PR#549](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/549)
moved `bans.allow-build-scripts` to
[`bans.build.allow-build-scripts`](https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html#the-allow-build-scripts-field-optional).
`bans.allow-build-scripts` is still supported, but emits a warning.

###
[`v1.5.4`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.4):
Release 1.5.4 - cargo-deny 0.14.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.3...v1.5.4)

Updated the cargo version to 1.71.0 which should give significant
improvements to run times due to using the crates.io sparse index
instead of the old git index.

###
[`v1.5.3`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.3):
Release 1.5.3 - cargo-deny 0.14.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.2...v1.5.3)

##### Changed

- [PR#520] resolved
[#&#8203;522](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/522)
by completely removing all dependencies upon `git2` and `openssl`. This
was done by transitioning from `git2` -> `gix` for all git operations,
both directly in this crate, as well as replacing
[`crates-index`](https://redirect.github.com/frewsxcv/rust-crates-index)
with
[`tame-index`](https://redirect.github.com/EmbarkStudios/tame-index).
-   [PR#520] bumped the MSRV from `1.65.0` -> `1.70.0`
-
[PR#523](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/523)
added "(try `cargo update -p <crate_name>`)" when an advisory is
detected for a crate. Thanks
[@&#8203;Victor-N-Suadicani](https://redirect.github.com/Victor-N-Suadicani)!

##### Fixed

- [PR#520] resolved
[#&#8203;361](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/361)
by printing output when a fetch is being performed to clarify what is
taking time.
- [PR#520] (possibly) resolved
[#&#8203;435](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/435)
by switching all git operations from `git2` to `gix`.
- [PR#520] resolved
[#&#8203;439](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/439)
by using minimal refspecs for cloning and fetching all remote git
repositories (indices or advisory databases) where only the remote HEAD
is needed to update the local repository, regardless of the default
remote branch pointed to by HEAD.
- [PR#520] resolved
[#&#8203;446](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/446)
by ensuring (and testing) that crates from non-registry sources are not
checked for advisories, eg. in the case that a local crate is named and
versioned the same as a crate from crates.io that has an advisory that
affects it.
- [PR#520] resolved
[#&#8203;515](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/515)
by always opening the correct registry index based upon the environment.
-
[PR#531](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/531)
resolved
[#&#8203;210](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/210)
by adding `osi` and `fsf` options to `licenses.allow-osi-fsf-free`.
Thanks [@&#8203;zkxs](https://redirect.github.com/zkxs)!
-
[PR#533](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/533)
resolved
[#&#8203;521](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/521)
and
[#&#8203;524](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/524)
by allowing clarifications to add files that are used to verify the
license information is up to date, rather than needing to match one of
the license files that was discovered.
-
[PR#534](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/534)
resolved
[#&#8203;479](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/479)
by improving how advisory databases are cloned and/or fetched, notably
each database now uses `gix`'s [file-based
locking](https://docs.rs/gix-lock/7.0.2/gix_lock/struct.Marker.html#method.acquire_to_hold_resource)
to ensure that only one process has mutable access to an advisory
database repo at a time.

##### Removed

- [PR#520] removed all features, notably `standalone`. This is due to
cargo still being in transition from `git2` -> `gix` and having no way
to compiled *without* OpenSSL. Once cargo is a better state with regards
to this we can add back that feature.

[PR#520]: https://redirect.github.com/EmbarkStudios/cargo-deny/pull/520

###
[`v1.5.2`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.2):
Release 1.5.2 - cargo-deny 0.13.9

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.1...v1.5.2)

##### Fixed

-
[PR#506](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/506)
replaced `atty` (unmaintained) with `is-terminal`. Thanks
[@&#8203;tottoto](https://redirect.github.com/tottoto)!
-
[PR#511](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/511)
resolved
[#&#8203;494](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/494),
[#&#8203;507](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/507),
and
[#&#8203;510](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/510)
by fixing up how and when urls are normalized.
-
[PR#512](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/512)
resolved
[#&#8203;509](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/509)
by fixing casing of the root configuration keys.
-
[PR#513](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/513)
resolved
[#&#8203;508](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/508)
by correctly using the crates.io sparse index when checking for yanked
crates if specified by the user, as well as falling back to the regular
git index if the sparse index is not present.

###
[`v1.5.1`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.1):
Release 1.5.1 - cargo-deny 0.13.8

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.5.0...v1.5.1)

##### Added

-
[PR#504](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/504)
(though really
[PR#365](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/365))
resolved
[#&#8203;350](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/350)
by adding the `deny-multiple-versions` field to `bans.deny` entries,
allowing specific crates to deny multiple versions while
allowing/warning on them more generally. Thanks
[@&#8203;leops](https://redirect.github.com/leops)!
-
[PR#493](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/493)
resolved
[#&#8203;437](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/437)
by also looking for deny configuration files in `.cargo`. Thanks
[@&#8203;DJMcNab](https://redirect.github.com/DJMcNab)!
-
[PR#502](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/502)
resolved
[#&#8203;500](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/500)
by adding initial support for [sparse
indices](https://blog.rust-lang.org/inside-rust/2023/01/30/cargo-sparse-protocol.html).

##### Fixed

-
[PR#503](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/503)
resolved
[#&#8203;498](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/498)
by falling back to more lax parsing of the SPDX expression of crate if
fails to parse according to the stricter but more correct rules.

###
[`v1.5.0`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.5.0):
Release 1.5.0 - cargo-deny 0.13.7

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.4.0...v1.5.0)

Update from cargo-deny 0.13.5 to 0.13.7, apparently I missed two
releases, that's embarrassing.

#### 0.13.7

##### Fixed

-
[PR#491](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/491)
resolved
[#&#8203;490](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/490)
by building libgit2 from vendored sources instead of relying on
potentially outdated packages.

#### 0.13.6

##### Changed

-
[PR#489](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/489)
updated dependencies, notably `clap`, `cargo`, and `git2`

##### Added

-
[PR#485](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/485)
added this project and repository to our Security Bug Bounty Program and
has Private vulnerability reporting enabled. See
[`SECURITY.md`](./SECURITY.md) for more details.
-
[PR#487](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/487)
added `allow-wildcard-paths`, fixing
[#&#8203;488](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/448)
by allowing wildcards to be denied, but allowing them for internal,
private crates. Thanks [@&#8203;sribich](https://giqthub.com/sribich)!

##### Fixed

-
[PR#489](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/489)
fixed an issue where git sources where `branch=master` would be
incorrectly categorized as not specifying the branch (ie use HEAD of
default branch).

###
[`v1.4.0`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.4.0):
Release 1.4.0 - cargo-deny 0.13.5

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.3.2...v1.4.0)

##### Changed

-   Updated to cargo-deny 0.13.5

###
[`v1.3.2`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.3.2):
- cargo-deny 0.12.1

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.3.1...v1.3.2)

##### Added

- [PR#54](https://redirect.github.com/PR/cargo-deny-action/issues/54)
resolved
[#&#8203;53](https://redirect.github.com/EmbarkStudios/cargo-deny-action/issues/53)
by adding the `credentials` parameter for passing in a private access
token to allow cargo to fetch private github repositories. Thanks
[@&#8203;danielhaap83](https://redirect.github.com/danielhaap83)!

###
[`v1.3.1`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.3.1):
- cargo-deny 0.12.1

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.3.0...v1.3.1)

##### Fixed

-
[PR#426](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/426)
fixed an oversight in
[PR#422](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/422),
fully resolving
[#&#8203;412](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/412)
by allowing both `https` and `ssh` URLs for advisory databases. Thanks
[@&#8203;jbg](https://redirect.github.com/jbg)!

##### Changed

-
[PR#427](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/427)
updated dependencies.

###
[`v1.3.0`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.3.0):
- cargo-deny 0.12.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.17...v1.3.0)

##### Removed

-
[PR#423](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/423)
removed the `fix` subcommand. This functionality was far too complicated
for far too little benefit.

##### Fixed

-
[PR#420](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/420)
resolved
[#&#8203;388](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/388)
by adding the ability to fetch advisory databases via the `git` CLI.
Thanks [@&#8203;danielhaap83](https://redirect.github.com/danielhaap83)!
-
[PR#422](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/422)
fixed
[#&#8203;380](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/380)
and
[#&#8203;410](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/410)
by updating a few transitive dependencies that use `git2`, as well as
removing the usage of `rustsec`'s `git` feature so that we now use `git2
v0.14`, resolving a crash issue in new `libgit2` versions available in
eg. rolling release distros such as Arch. This should also make it
easier to update and improve git related functionality since more of it
is inside cargo-deny itself now.
-
[PR#424](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/424)
*really* fixed (there's even a test now!)
[#&#8203;384](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/384)
by adding each version's reverse dependency graph in the ascending
order.

###
[`v1.2.17`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.17):
- cargo-deny 0.11.4

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.16...v1.2.17)

#### Changed

-
[PR#51](https://redirect.github.com/EmbarkStudios/cargo-deny-action/pull/51)
updated the image to use Rust 1.60.0 by default. Thanks
[@&#8203;MarcoIeni](https://redirect.github.com/MarcoIeni)!

###
[`v1.2.16`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.16):
- cargo-deny 0.11.4

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.15...v1.2.16)

#### Added

-
[PR#49](https://redirect.github.com/EmbarkStudios/cargo-deny-action/pull/49)
added the `command-arguments` option to the action. Thanks
[@&#8203;ryo33](https://redirect.github.com/ryo33)!

###
[`v1.2.15`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.15):
- cargo-deny 0.11.3

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.14...v1.2.15)

##### Fixed

- Accidentally change how arguments were forwarded to cargo-deny which
broken more complicated invocations

###
[`v1.2.14`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.14):
- cargo-deny 0.11.3

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.13...v1.2.14)

##### Added

- Added `git` to the image, resolving
[#&#8203;40](https://redirect.github.com/EmbarkStudios/cargo-deny-action/issues/40)

###
[`v1.2.13`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.13):
- cargo-deny 0.11.3

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.12...v1.2.13)

##### Changed

- Added the `rust-version` github actions variable, allowing you to
specify a specific cargo version to use when running cargo-deny,
including nightly, or other unstable versions.

###
[`v1.2.12`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.12):
- cargo-deny 0.11.3

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.11...v1.2.12)

##### Fixed

-
[PR#407](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/407)
resolved
[#&#8203;406](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/406)
by always checking license exceptions first.

###
[`v1.2.11`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.10...v1.2.11)

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.10...v1.2.11)

###
[`v1.2.10`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.10):
- cargo-deny 0.11.1

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.9...v1.2.10)

##### Added

-
[PR#391](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/391)
resolved
[#&#8203;344](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/344)
by adding `[licenses.ignore-sources]` to ignore license checking for
crates sourced from 1 or more specified registries. Thanks
[@&#8203;ShellWowza](https://redirect.github.com/ShellWowza)!
-
[PR#396](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/396)
resolved
[#&#8203;366](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/366)
by also looking for `.deny.toml` in addition to `deny.toml` if a config
file is not specified.

##### Changed

-
[PR#392](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/392)
updated all dependencies.

##### Fixed

-
[PR#393](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/393)
resolved
[#&#8203;371](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/371)
by changing the default for version requirements specified in config
files to accept all versions, rather than using the almost-but-not-quite
default of `*`.
-
[PR#394](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/394)
resolved
[#&#8203;147](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/147)
by ignore *all* private crates, not only the ones in the workspace.
-
[PR#395](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/395)
resolved
[#&#8203;375](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/375)
by fixing a potential infinite loop when using `[bans.skip-tree]`.

###
[`v1.2.9`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.9):
- cargo-deny 0.11.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.8...v1.2.9)

Fixed image to use proper tag.

###
[`v1.2.8`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.8):
- cargo-deny 0.11.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.7...v1.2.8)

Updated the cargo version in the image to 1.57.0 to allow for the use of
[custom
profiles](https://doc.rust-lang.org/cargo/reference/profiles.html#custom-profiles).

###
[`v1.2.7`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.7):
v1.2.6 - cargo-deny 0.11.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.6...v1.2.7)

#### \[0.11.0] - 2021-12-06

##### Changed

-
[PR#382](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/382)
updated dependencies and bumped the Minimum Stable Rust Version to
**1.56.1**.

#### \[0.10.3] - 2021-11-22

##### Changed

-
[PR#379](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/379)
updated `askalono` which got rid of the `failure` dependency, which was
pulling in a lot of additional crates that are now gone.

##### Fixed

-
[PR#379](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/379)
fixed
[#&#8203;378](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/378)
which was an edge case where the `sources` check was executed against a
crate that didn't use any crates from crates.io, and the config file was
shorter than the crates.io URL.

#### \[0.10.2] - 2021-11-21

##### Fixed

-
[PR#376](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/376)
fixed the JSON formatting when using `--format json` output option.
Thanks [@&#8203;dnaka91](https://redirect.github.com/dnaka91)!

##### Changed

-
[PR#377](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/377)
updated dependencies.

#### \[0.10.1] - 2021-11-10

##### Fixed

-
[PR#347](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/374)
resolved
[#&#8203;372](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/372)
by correcting a slight mistake that resulted in an incorrect hash making
cargo-deny unable to lookup index or crate information from the local
file system.

#### \[0.10.0] - 2021-10-29

##### Added

-
[PR#353](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/353)
resolved
[#&#8203;351](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/351)
by adding the `sources.private` field to blanket allow git repositories
sourced from a particular url.
-
[PR#359](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/359)
resolved
[#&#8203;341](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/341)
and
[#&#8203;357](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/357)
by adding support for the [`--frozen`, `--locked`, and
`--offline`](https://doc.rust-lang.org/cargo/commands/cargo-metadata.html#manifest-options)
flags to determine whether network access is allowed, and whether the
`Cargo.lock` file can be created and/or modified.
-
[PR#368](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/368)
added the `licenses.unused-allowed-license` field to control whether the
[L006 - license was not
encountered](https://embarkstudios.github.io/cargo-deny/checks/licenses/diags.html#l006---license-was-not-encountered)
diagnostic. Thanks [@&#8203;thomcc](https://redirect.github.com/thomcc)!

##### Changed

-
[PR#358](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/358)
bumped the Minimum Stable Rust Version to **1.53.0**.
-
[PR#358](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/358)
bumped various dependencies, notably `semver` to `1.0.3`.

#### \[0.9.1] - 2021-03-26

##### Changed

-   Updated dependencies

###
[`v1.2.6`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.6):
Release 1.2.6 - cargo-deny 0.9.1

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.5...v1.2.6)

##### Changed

-   Updated dependencies

###
[`v1.2.5`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.5):
- cargo-deny 0.9.0

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.4...v1.2.5)

##### Changed

- Updated `krates`, which in turn uses an updated `cargo_metadata` which
uses [`camino`](https://docs.rs/camino) for utf-8 paths. Rather than
support both vanilla Path/Buf and Utf8Path/Buf, cargo-deny now just uses
Utf8Path/Buf, which means that non-utf-8 paths for things like your
Cargo.toml manifest or license paths will no longer function. This is a
breaking change, that can be reverted if it disruptive for users, but
the assumption is that cargo-deny is operating on normal checkouts of
rust repositories that are overwhelmingly going to be utf-8 compatible
paths.

###
[`v1.2.4`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.4):
Update image

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.3...v1.2.4)

Updates the base image to rust 1.50.0 to fix issue if you pin to it via
eg rust-toolchain.

###
[`v1.2.3`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.3):
- cargo-deny 0.8.5

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.2...v1.2.3)

##### Added

-
[PR#315](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/315)
resolved
[#&#8203;312](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/312)
by adding support for excluding packages in the deny configuration file,
in addition to the existing support for the `--exclude` CLI option.
Thanks [@&#8203;luser](https://redirect.github.com/luser)!

##### Fixed

-
[PR#318](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/318)
fixed
[#&#8203;316](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/316)
by adding a workaround for crate versions with pre-release identifiers
in them that could be erroneously marked as matching advisories in an
advisory database. Thanks for reporting this
[@&#8203;djc](https://redirect.github.com/djc)!

###
[`v1.2.2`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.2):
- cargo-deny 0.8.4

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.2.1...v1.2.2)

##### Changed

-   Updated dependencies, notably `rustsec`, `crossbeam`\*, and `cargo`.
-   Bumped the Minimum Stable Rust Version to **1.44.1**.

###
[`v1.2.1`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/v1.2.1):
- cargo-deny 0.8.1

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/1.2.0...v1.2.1)

Updates cargo-deny from 0.7.3 -> 0.8.1

##### Added

-
[PR#238](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/238)
resolved
[#&#8203;225](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/225)
by adding a `wrappers` field to `[bans.deny]` entries, which allows the
banned crate to be used only if it is a direct dependency of one of the
wrapper crates. Thanks
[@&#8203;Stupremee](https://redirect.github.com/Stupremee)!
-
[PR#244](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/244)
resolved
[#&#8203;69](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/69)
by adding support for multiple advisory databases, which will all be
checked during the `advisory` check. Thanks
[@&#8203;Stupremee](https://redirect.github.com/Stupremee)!
-
[PR#243](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/243)
resolved
[#&#8203;54](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/54)
by adding support for compiling and using `cargo` crate directly via the
`standalone` feature. This allows `cargo-deny` to be used without cargo
being installed, but it still requires
[**rustc**](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/295)
to be available. Thanks
[@&#8203;Stupremee](https://redirect.github.com/Stupremee)!
-
[PR#275](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/275)
resolved
[#&#8203;64](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/64)
by adding a diagnostic when a user tries to ignore an advisory
identifier that doesn't exist in any database.
-
[PR#262](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/262)
added the `fix` subcommand, which was added to bring `cargo-deny` to
feature parity with `cargo-audit` so that it can take over for
`cargo-audit` as the [official
frontend](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/194)
for the the [RustSec Advisory
Database](https://redirect.github.com/RustSec/advisory-db).

##### Changed

- `advisories.db-url` has been deprecated in favor of
`advisories.db-urls` since multiple databses are now supported.
- `advisories.db-path` is now no longer the directory into which the
advisory database is cloned into, but rather a root directory where each
unique database is placed in a canonicalized directory similar to how
`.cargo/registry/index` directories work.
-
[PR#274](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/274)
resolved
[#&#8203;115](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/115)
by normalizing git urls. Thanks
[@&#8203;senden9](https://redirect.github.com/senden9)!

##### Fixed

-
[#&#8203;265](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/265)
A transitive dependency (`smol_str`) forced the usage of the latest Rust
stable version (1.46) which was unintended. We now state the MSRV in the
README and check for it in CI so that changing the MSRV is a conscious
decision.
-
[PR#287](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/287)
fixed
[#&#8203;286](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/286),
which could happen if using a git source where the representation
differed slightly between the user specified id and the id used for
dependencies.
-
[PR#249](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/249)
fixed
[#&#8203;190](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/190)
by printing a different diagnostic for when the path specified for a
clarification license file could not be found. Thanks
[@&#8203;khodzha](https://redirect.github.com/khodzha)!
-
[PR#297](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/297)
fixed a couple of diagnostics to have codes.
-
[PR#296](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/296)
resolved
[#&#8203;288](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/288)
by improving the information in diagnostics pertaining to advisories.
Thanks [@&#8203;tomasfarias](https://redirect.github.com/tomasfarias)!

###
[`v1.2.0`](https://redirect.github.com/EmbarkStudios/cargo-deny-action/releases/tag/1.2.0):
- cargo-deny 0.8.1

[Compare
Source](https://redirect.github.com/EmbarkStudios/cargo-deny-action/compare/v1.1.0...1.2.0)

Updates cargo-deny from 0.7.3 -> 0.8.1

##### Added

-
[PR#238](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/238)
resolved
[#&#8203;225](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/225)
by adding a `wrappers` field to `[bans.deny]` entries, which allows the
banned crate to be used only if it is a direct dependency of one of the
wrapper crates. Thanks
[@&#8203;Stupremee](https://redirect.github.com/Stupremee)!
-
[PR#244](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/244)
resolved
[#&#8203;69](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/69)
by adding support for multiple advisory databases, which will all be
checked during the `advisory` check. Thanks
[@&#8203;Stupremee](https://redirect.github.com/Stupremee)!
-
[PR#243](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/243)
resolved
[#&#8203;54](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/54)
by adding support for compiling and using `cargo` crate directly via the
`standalone` feature. This allows `cargo-deny` to be used without cargo
being installed, but it still requires
[**rustc**](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/295)
to be available. Thanks
[@&#8203;Stupremee](https://redirect.github.com/Stupremee)!
-
[PR#275](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/275)
resolved
[#&#8203;64](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/64)
by adding a diagnostic when a user tries to ignore an advisory
identifier that doesn't exist in any database.
-
[PR#262](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/262)
added the `fix` subcommand, which was added to bring `cargo-deny` to
feature parity with `cargo-audit` so that it can take over for
`cargo-audit` as the [official
frontend](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/194)
for the the [RustSec Advisory
Database](https://redirect.github.com/RustSec/advisory-db).

##### Changed

- `advisories.db-url` has been deprecated in favor of
`advisories.db-urls` since multiple databses are now supported.
- `advisories.db-path` is now no longer the directory into which the
advisory database is cloned into, but rather a root directory where each
unique database is placed in a canonicalized directory similar to how
`.cargo/registry/index` directories work.
-
[PR#274](https://redirect.github.com/EmbarkStudios/cargo-deny/pull/274)
resolved
[#&#8203;115](https://redirect.github.com/EmbarkStudios/cargo-deny/issues/115)
by normalizing git urls. Thanks
[@&#8203;senden9](https://redirect.github.com/senden9)!

##### Fixe

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-28 10:56:57 +02:00
renovate[bot] aacf2a724c
Update astral-sh/setup-uv action to v6 (#13162)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [astral-sh/setup-uv](https://redirect.github.com/astral-sh/setup-uv) |
action | major | `v5.4.2` -> `v6.0.0` |

---

### Release Notes

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

###
[`v6.0.0`](https://redirect.github.com/astral-sh/setup-uv/releases/tag/v6.0.0):
🌈 activate-environment and working-directory

[Compare
Source](https://redirect.github.com/astral-sh/setup-uv/compare/v5.4.2...v6.0.0)

##### Changes

This version contains some breaking changes which have been gathering up
for a while. Lets dive into them:

-   [Activate environment](#activate-environment)
-   [Working Directory](#working-directory)
-   [Default `cache-dependency-glob`](#default-cache-dependency-glob)
- [Use default cache dir on self hosted
runners](#use-default-cache-dir-on-self-hosted-runners)

##### Activate environment

In previous versions using the input `python-version` automatically
activated a venv at the repository root.
This led to some unwanted side-effects, was sometimes unexpected and not
flexible enough.

The venv activation is now explicitly controlled with the new input
`activate-environment` (false by default):

```yaml
- name: Install the latest version of uv and activate the environment
  uses: astral-sh/setup-uv@v6
  with:
    activate-environment: true
- run: uv pip install pip
```

The venv gets created by the [`uv
venv`](https://docs.astral.sh/uv/pip/environments/) command so the
python version is controlled by the `python-version` input or the files
`pyproject.toml`, `uv.toml`, `.python-version` in the
`working-directory`.

##### Working Directory

The new input `working-directory` controls where we look for
`pyproject.toml`, `uv.toml` and `.python-version` files
which are used to determine the version of uv and python to install.

It can also be used to control where the venv gets created.

```yaml
- name: Install uv based on the config files in the working-directory
  uses: astral-sh/setup-uv@v6
  with:
    working-directory: my/subproject/dir
```

> \[!CAUTION]
>
> The inputs `pyproject-file` and `uv-file` have been removed.

##### Default `cache-dependency-glob`

[@&#8203;ssbarnea](https://redirect.github.com/ssbarnea) found out that
the default `cache-dependency-glob` was not suitable for a lot of users.

The old default

```yaml
cache-dependency-glob: |
  **/requirements*.txt
  **/uv.lock
```

is changed and should cover over 99.5% of use cases:

```yaml
cache-dependency-glob: |
  **/*(requirements|constraints)*.(txt|in)
  **/pyproject.toml
  **/uv.lock
```

> \[!NOTE]
>
> This shouldn't be a breaking change. The only thing you may notice is
that your caches get invalidated once.

##### Use default cache dir on self hosted runners

The directory where uv stores its cache was always set to a directory in
`RUNNER_TEMP`. For self-hosted runners this made no sense as this gets
cleaned after every run and led to slower runs than necessary.

On self-hosted runners `UV_CACHE_DIR` is no longer set and the [default
cache
directory](https://docs.astral.sh/uv/concepts/cache/#cache-directory) is
used instead.

##### 🚨 Breaking changes

- Change default cache-dependency-glob
[@&#8203;eifinger](https://redirect.github.com/eifinger)
([#&#8203;352](https://redirect.github.com/astral-sh/setup-uv/issues/352))
- No default UV_CACHE_DIR on selfhosted runners
[@&#8203;eifinger](https://redirect.github.com/eifinger)
([#&#8203;380](https://redirect.github.com/astral-sh/setup-uv/issues/380))
- new inputs activate-environment and working-directory
[@&#8203;eifinger](https://redirect.github.com/eifinger)
([#&#8203;381](https://redirect.github.com/astral-sh/setup-uv/issues/381))

##### 🧰 Maintenance

- chore: update known checksums for 0.6.16
@&#8203;[github-actions\[bot\]](https://redirect.github.com/apps/github-actions)
([#&#8203;378](https://redirect.github.com/astral-sh/setup-uv/issues/378))
- chore: update known checksums for 0.6.15
@&#8203;[github-actions\[bot\]](https://redirect.github.com/apps/github-actions)
([#&#8203;377](https://redirect.github.com/astral-sh/setup-uv/issues/377))

##### 📚 Documentation

- bump to v6 in README
[@&#8203;eifinger](https://redirect.github.com/eifinger)
([#&#8203;382](https://redirect.github.com/astral-sh/setup-uv/issues/382))
- log info on venv activation
[@&#8203;eifinger](https://redirect.github.com/eifinger)
([#&#8203;375](https://redirect.github.com/astral-sh/setup-uv/issues/375))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-28 10:53:35 +02:00
renovate[bot] 0f58828003
Update Swatinem/rust-cache action to v2.7.8 (#13160) 2025-04-27 22:30:40 -04:00
renovate[bot] 0a49849f5a
Update docker/build-push-action action to v6.16.0 (#13151) 2025-04-28 02:23:30 +00:00
renovate[bot] 5783ed666e
Update actions/setup-python action to v5.6.0 (#13150) 2025-04-27 21:38:50 -04:00
renovate[bot] 17cfd82c34
Update taiki-e/install-action digest to ab3728c (#13143) 2025-04-28 00:32:30 +00:00
renovate[bot] bb16905a69
Update pypa/gh-action-pypi-publish digest to db8f07d (#13142) 2025-04-27 20:31:18 -04:00
Charlie Marsh 38bcf66861
Don't run CodSpeed benchmarks outside of `astral-sh/uv` (#13140)
## Summary

This fails on forks, I think, since you can't post to CodSpeed.
2025-04-27 20:22:31 -04:00
Charlie Marsh 1cafcd0ad9
Loosen `github.repository` match in `ci.yml` (#13121)
## Summary

Discussed with @zanieb and was recommended to remove this piece
entirely.
2025-04-26 16:16:58 +00:00
konsti c7c9b7a90e
Test publishing with pypa/gh-action-pypi-publish (#12742)
A publish testing for #11652
2025-04-25 18:27:40 +02:00
Zanie Blue 05c40921cc
Retry on deadsnake repo add failure (#13026)
This has been failing with a 504
2025-04-21 16:59:06 -05:00
renovate[bot] 06134f34ea
Update docker/login-action action to v3.4.0 (#13008) 2025-04-21 08:29:32 -04:00
renovate[bot] e992e5fa17
Update docker/setup-buildx-action action to v3.10.0 (#13010) 2025-04-21 08:29:19 -04:00
renovate[bot] a74f995441
Update docker/metadata-action action to v5.7.0 (#13009) 2025-04-21 08:29:12 -04:00
renovate[bot] 98e3546afd
Update docker/build-push-action action to v6.15.0 (#13007) 2025-04-21 08:29:02 -04:00
renovate[bot] f56ca37271
Update conda-incubator/setup-miniconda action to v3.1.1 (#13005) 2025-04-21 08:28:52 -04:00
renovate[bot] bdfb014d68
Update astral-sh/setup-uv action to v5.4.2 (#13004) 2025-04-21 03:54:04 +00:00
renovate[bot] c929f71085
Update actions/setup-python action to v5.5.0 (#13003) 2025-04-21 03:32:53 +00:00
renovate[bot] 78f2b697ce
Update actions/checkout action to v4.2.2 (#13002) 2025-04-21 03:08:09 +00:00
renovate[bot] 9b65e49096
Update actions/attest-build-provenance action to v2.2.3 (#13001) 2025-04-21 02:49:22 +00:00
renovate[bot] 26fb1ac320
Update taiki-e/install-action digest to 09dc018 (#12996) 2025-04-21 02:15:02 +00:00
renovate[bot] f967ca7afe
Update astral-sh/setup-uv digest to d4b2f3b (#12995) 2025-04-21 02:12:27 +00:00
Aria Desires eef3fc2215
update cargo-dist and enable ci checks (#12949)
Fixes #12881 
Potentially Fixes #12780
Prevents #12879
2025-04-17 19:32:56 -04:00
renovate[bot] 693110506a
Update Artifact GitHub Actions dependencies (#12865) 2025-04-14 08:31:19 -04:00
renovate[bot] e718f55677
Update taiki-e/install-action digest to be7c31b (#12860) 2025-04-14 08:21:35 -04:00
Zanie Blue 50de464425
Add integration test for GitHub provided free-threaded Python (#12471) 2025-04-10 16:51:50 -05:00
Aria Desires 876b9aef50
update cargo-dist (#12790)
Putting this up to confirm that it does what it should:

* undirty the release.yml by including action-commits in the config
* add `persist-credentials=false` hardening
* includes but does not use `[package.metadata.dist.binaries]` overrides
(for #11786)
2025-04-10 09:42:41 -04:00
renovate[bot] df2d773d52
Update taiki-e/install-action digest to 2db3465 (#12697)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[taiki-e/install-action](https://redirect.github.com/taiki-e/install-action)
| action | digest | `6aca1cf` -> `2db3465` |

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMjcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjIzNS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-08 12:07:05 -05:00
konsti b0a6ef4dd6
Update maturin-action to v1.48.1 (#12736)
Initially, this was for testing CI for #12688, but I think it makes
sense to merge this independently and rebase #12688 on top of it.
2025-04-08 12:10:48 -04:00
Meitar Reihan 2b62f73064
Add `UV_PYTHON_DOWNLOADS_JSON_URL` to set custom managed python sources (#10939)
## Summary

Add an option to overwrite the list of available Python downloads from a
local JSON file by using the environment variable
`UV_PYTHON_DOWNLOADS_JSON_URL`

as an experimental support for providing custom sources for Python
distribution binaries #8015

related #10203

I probably should make the JSON to be fetched from a remote URL instead
of a local file.
please let me know what you think and I will modify the code
accordingly.

## Test Plan

### normal run
```
root@75c66494ba8b:/# /code/target/release/uv python list
cpython-3.14.0a4+freethreaded-linux-x86_64-gnu    <download available>
cpython-3.14.0a4-linux-x86_64-gnu                 <download available>
cpython-3.13.1+freethreaded-linux-x86_64-gnu      <download available>
cpython-3.13.1-linux-x86_64-gnu                   <download available>
cpython-3.12.8-linux-x86_64-gnu                   <download available>
cpython-3.11.11-linux-x86_64-gnu                  <download available>
cpython-3.10.16-linux-x86_64-gnu                  <download available>
cpython-3.9.21-linux-x86_64-gnu                   <download available>
cpython-3.8.20-linux-x86_64-gnu                   <download available>
cpython-3.7.9-linux-x86_64-gnu                    <download available>
pypy-3.10.14-linux-x86_64-gnu                     <download available>
pypy-3.9.19-linux-x86_64-gnu                      <download available>
pypy-3.8.16-linux-x86_64-gnu                      <download available>
pypy-3.7.13-linux-x86_64-gnu                      <download available>
```

### empty JSON file
```sh
root@75c66494ba8b:/# export UV_PYTHON_DOWNLOADS_JSON_URL=/code/crates/uv-python/my-download-metadata.json 
root@75c66494ba8b:/# cat $UV_PYTHON_DOWNLOADS_JSON_URL 
{}
root@75c66494ba8b:/# /code/target/release/uv python list
root@75c66494ba8b:/# 
```

### JSON file with valid version
```sh
root@75c66494ba8b:/# export UV_PYTHON_DOWNLOADS_JSON_URL=/code/crates/uv-python/my-download-metadata.json 
root@75c66494ba8b:/# cat $UV_PYTHON_DOWNLOADS_JSON_URL 
{
  "cpython-3.11.9-linux-x86_64-gnu": {
    "name": "cpython",
    "arch": {
      "family": "x86_64",
      "variant": null
    },
    "os": "linux",
    "libc": "gnu",
    "major": 3,
    "minor": 11,
    "patch": 9,
    "prerelease": "",
    "url": "https://github.com/astral-sh/python-build-standalone/releases/download/20240814/cpython-3.11.9%2B20240814-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz",
    "sha256": "daa487c7e73005c4426ac393273117cf0e2dc4ab9b2eeda366e04cd00eea00c9",
    "variant": null
  }
}
root@75c66494ba8b:/# /code/target/release/uv python list
cpython-3.11.9-linux-x86_64-gnu    <download available>
root@75c66494ba8b:/# 
```

### Remote Path

```sh
root@75c66494ba8b:/# export UV_PYTHON_DOWNLOADS_JSON_URL=http://a.com/file.json 
root@75c66494ba8b:/# /code/target/release/uv python list
error: Remote python downloads JSON is not yet supported, please use a local path (without `file://` prefix)
```

---------

Co-authored-by: Aria Desires <aria.desires@gmail.com>
2025-04-07 13:55:00 -04:00
Aria Desires ba443fae75
use astral-sh/cargo-dist instead (#12659) 2025-04-03 17:25:18 -04:00
renovate[bot] c1b49b9ab2
Update astral-sh/setup-uv digest to 0c5e2b8 (#12569) 2025-03-31 13:29:05 +00:00
renovate[bot] 545ededdf6
Pin actions/checkout action to 11bd719 (#12567) 2025-03-31 09:07:40 -04:00
renovate[bot] be615cb213
Update Artifact GitHub Actions dependencies (#12572) 2025-03-31 09:07:01 -04:00
renovate[bot] ae03d7e617
Update taiki-e/install-action digest to 6aca1cf (#12570) 2025-03-31 09:06:51 -04:00
renovate[bot] 123b9d7a5c
Update actions/setup-python digest to 8d9ed9a (#12568) 2025-03-31 09:06:17 -04:00
Zanie Blue a28db37f33
Add smoke test script in Python (#11628)
I wanted to consolidate these anyway, and apparently it's a huge pain to
make a Windows task fail early via GitHub's PowerShell setup so I
implement this in Python instead.
2025-03-27 15:35:21 -05:00
konsti 99e2324dcf
Use 64-bit host for 32-bit releases to work around OOM (#12466)
The i686 linux gnu release job started failing since the last release
(#12430) due to an OOM with llvm breaking the 4GB limit for 32-bit
processes. We work around this by using a 64-bit host targeting 32-bit.
2025-03-25 18:33:31 +01:00
renovate[bot] f00f8e908a
Update taiki-e/install-action digest to 914ac1e (#12410) 2025-03-24 09:19:26 -04:00
renovate[bot] 2040c1c330
Update webfactory/ssh-agent action to v0.9.1 (#12421) 2025-03-24 09:19:07 -04:00
renovate[bot] 6355a24240
Update PyO3/maturin-action action to v1.47.3 (#12411) 2025-03-23 22:15:00 -04:00
renovate[bot] b69be96e0f
Update astral-sh/setup-uv digest to 2269511 (#12409) 2025-03-23 22:14:16 -04:00
renovate[bot] 619e300025
Update Swatinem/rust-cache digest to 9d47c6a (#12408) 2025-03-23 22:14:10 -04:00
Charlie Marsh e9d2b6ecea
Un-pin `maturin-action` version (#12287)
## Summary

The commit we want is in https://github.com/PyO3/maturin-action/pull/330
which is now released.
2025-03-18 10:54:22 -05:00
renovate[bot] 3c20ffe9ef
Update PyO3/maturin-action action to v1.47.2 (#12228) 2025-03-17 14:17:16 -04:00
renovate[bot] 28a2d07c44
Update CodSpeedHQ/action action to v3.5.0 (#12227) 2025-03-17 14:17:03 -04:00
renovate[bot] 68ece236a9
Update peter-evans/create-pull-request action to v7.0.8 (#12226) 2025-03-17 14:16:46 -04:00
renovate[bot] f31a1edd42
Update taiki-e/install-action digest to 2c41309 (#12213) 2025-03-17 03:32:42 +00:00
renovate[bot] 5880a98163
Pin dependencies (#12191)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) |
action | pinDigest | -> `0010eb0` |
|
[EmbarkStudios/cargo-deny-action](https://redirect.github.com/EmbarkStudios/cargo-deny-action)
| action | pinDigest | -> `3f4a782` |
| [PyO3/maturin-action](https://redirect.github.com/PyO3/maturin-action)
| action | pinDigest | -> `36db840` |
|
[SebRollen/toml-action](https://redirect.github.com/SebRollen/toml-action)
| action | pinDigest | -> `b1b3628` |
| [Swatinem/rust-cache](https://redirect.github.com/Swatinem/rust-cache)
| action | pinDigest | -> `f0deed1` |
|
[acj/freebsd-firecracker-action](https://redirect.github.com/acj/freebsd-firecracker-action)
| action | pinDigest | -> `4d93174` |
|
[actions/attest-build-provenance](https://redirect.github.com/actions/attest-build-provenance)
| action | pinDigest | -> `c074443` |
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | pinDigest | -> `11bd719` |
|
[actions/setup-python](https://redirect.github.com/actions/setup-python)
| action | pinDigest | -> `4237552` |
| [astral-sh/setup-uv](https://redirect.github.com/astral-sh/setup-uv) |
action | pinDigest | -> `f94ec6b` |
|
[conda-incubator/setup-miniconda](https://redirect.github.com/conda-incubator/setup-miniconda)
| action | pinDigest | -> `505e639` |
|
[docker/build-push-action](https://redirect.github.com/docker/build-push-action)
| action | pinDigest | -> `471d1dc` |
| [docker/login-action](https://redirect.github.com/docker/login-action)
| action | pinDigest | -> `74a5d14` |
|
[docker/metadata-action](https://redirect.github.com/docker/metadata-action)
| action | pinDigest | -> `902fa8e` |
|
[docker/setup-buildx-action](https://redirect.github.com/docker/setup-buildx-action)
| action | pinDigest | -> `b5ca514` |
|
[ludeeus/action-shellcheck](https://redirect.github.com/ludeeus/action-shellcheck)
| action | pinDigest | -> `00cae50` |
|
[peter-evans/create-pull-request](https://redirect.github.com/peter-evans/create-pull-request)
| action | pinDigest | -> `271a8d0` |
|
[taiki-e/install-action](https://redirect.github.com/taiki-e/install-action)
| action | pinDigest | -> `2153a01` |
|
[uraimo/run-on-arch-action](https://redirect.github.com/uraimo/run-on-arch-action)
| action | pinDigest | -> `ac33288` |
|
[webfactory/ssh-agent](https://redirect.github.com/webfactory/ssh-agent)
| action | pinDigest | -> `dc588b6` |

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDAuMCIsInVwZGF0ZWRJblZlciI6IjM5LjIwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-15 16:25:19 -04:00
renovate[bot] 8cf439bc36
Update Artifact GitHub Actions dependencies (#12192)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[actions/download-artifact](https://redirect.github.com/actions/download-artifact)
| action | minor | `v4` -> `v4.1.9` |
|
[actions/upload-artifact](https://redirect.github.com/actions/upload-artifact)
| action | minor | `v4` -> `v4.6.1` |

---

### Release Notes

<details>
<summary>actions/download-artifact (actions/download-artifact)</summary>

###
[`v4.1.9`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.9)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.8...v4.1.9)

#### What's Changed

- Add workflow file for publishing releases to immutable action package
by [@&#8203;Jcambass](https://redirect.github.com/Jcambass) in
[https://github.com/actions/download-artifact/pull/354](https://redirect.github.com/actions/download-artifact/pull/354)
- docs: small migration fix by
[@&#8203;froblesmartin](https://redirect.github.com/froblesmartin) in
[https://github.com/actions/download-artifact/pull/370](https://redirect.github.com/actions/download-artifact/pull/370)
- Update MIGRATION.md by
[@&#8203;andyfeller](https://redirect.github.com/andyfeller) in
[https://github.com/actions/download-artifact/pull/372](https://redirect.github.com/actions/download-artifact/pull/372)
- Update artifact package to 2.2.2 by
[@&#8203;yacaovsnc](https://redirect.github.com/yacaovsnc) in
[https://github.com/actions/download-artifact/pull/380](https://redirect.github.com/actions/download-artifact/pull/380)

#### New Contributors

- [@&#8203;Jcambass](https://redirect.github.com/Jcambass) made their
first contribution in
[https://github.com/actions/download-artifact/pull/354](https://redirect.github.com/actions/download-artifact/pull/354)
- [@&#8203;froblesmartin](https://redirect.github.com/froblesmartin)
made their first contribution in
[https://github.com/actions/download-artifact/pull/370](https://redirect.github.com/actions/download-artifact/pull/370)
- [@&#8203;andyfeller](https://redirect.github.com/andyfeller) made
their first contribution in
[https://github.com/actions/download-artifact/pull/372](https://redirect.github.com/actions/download-artifact/pull/372)
- [@&#8203;yacaovsnc](https://redirect.github.com/yacaovsnc) made their
first contribution in
[https://github.com/actions/download-artifact/pull/380](https://redirect.github.com/actions/download-artifact/pull/380)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4...v4.1.9

###
[`v4.1.8`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.8)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.7...v4.1.8)

#### What's Changed

- Update
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
version, bump dependencies by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/download-artifact/pull/341](https://redirect.github.com/actions/download-artifact/pull/341)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4...v4.1.8

###
[`v4.1.7`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.7)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.6...v4.1.7)

#### What's Changed

- Update
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
dependency by
[@&#8203;bethanyj28](https://redirect.github.com/bethanyj28) in
[https://github.com/actions/download-artifact/pull/325](https://redirect.github.com/actions/download-artifact/pull/325)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4.1.6...v4.1.7

###
[`v4.1.6`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.6)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.5...v4.1.6)

#### What's Changed

- updating `@actions/artifact` dependency to v2.1.6 by
[@&#8203;eggyhead](https://redirect.github.com/eggyhead) in
[https://github.com/actions/download-artifact/pull/324](https://redirect.github.com/actions/download-artifact/pull/324)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4.1.5...v4.1.6

###
[`v4.1.5`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.5)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.4...v4.1.5)

##### What's Changed

- Update readme with v3/v2/v1 deprecation notice by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/download-artifact/pull/322](https://redirect.github.com/actions/download-artifact/pull/322)
- Update dependencies `@actions/core` to v1.10.1 and `@actions/artifact`
to v2.1.5

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4.1.4...v4.1.5

###
[`v4.1.4`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.4)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.3...v4.1.4)

#### What's Changed

- Update
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
by [@&#8203;bethanyj28](https://redirect.github.com/bethanyj28) in
[https://github.com/actions/download-artifact/pull/307](https://redirect.github.com/actions/download-artifact/pull/307)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4...v4.1.4

###
[`v4.1.3`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.3)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.2...v4.1.3)

#### What's Changed

- Update release-new-action-version.yml by
[@&#8203;konradpabjan](https://redirect.github.com/konradpabjan) in
[https://github.com/actions/download-artifact/pull/292](https://redirect.github.com/actions/download-artifact/pull/292)
- Update toolkit dependency with updated unzip logic by
[@&#8203;bethanyj28](https://redirect.github.com/bethanyj28) in
[https://github.com/actions/download-artifact/pull/299](https://redirect.github.com/actions/download-artifact/pull/299)
- Update
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
by [@&#8203;bethanyj28](https://redirect.github.com/bethanyj28) in
[https://github.com/actions/download-artifact/pull/303](https://redirect.github.com/actions/download-artifact/pull/303)

#### New Contributors

- [@&#8203;bethanyj28](https://redirect.github.com/bethanyj28) made
their first contribution in
[https://github.com/actions/download-artifact/pull/299](https://redirect.github.com/actions/download-artifact/pull/299)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4...v4.1.3

###
[`v4.1.2`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.2)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.1...v4.1.2)

- Bump
[@&#8203;actions/artifacts](https://redirect.github.com/actions/artifacts)
to latest version to include [updated GHES host
check](https://redirect.github.com/actions/toolkit/pull/1648)

###
[`v4.1.1`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.1)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.0...v4.1.1)

- Fix transient request timeouts
[https://github.com/actions/download-artifact/issues/249](https://redirect.github.com/actions/download-artifact/issues/249)
-   Bump `@actions/artifacts` to latest version

###
[`v4.1.0`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.0)

[Compare
Source](https://redirect.github.com/actions/download-artifact/compare/v4...v4.1.0)

#### What's Changed

- Some cleanup by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/download-artifact/pull/247](https://redirect.github.com/actions/download-artifact/pull/247)
- Fix default for run-id by
[@&#8203;stchr](https://redirect.github.com/stchr) in
[https://github.com/actions/download-artifact/pull/252](https://redirect.github.com/actions/download-artifact/pull/252)
- Support pattern matching to filter artifacts & merge to same directory
by [@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/download-artifact/pull/259](https://redirect.github.com/actions/download-artifact/pull/259)

#### New Contributors

- [@&#8203;stchr](https://redirect.github.com/stchr) made their first
contribution in
[https://github.com/actions/download-artifact/pull/252](https://redirect.github.com/actions/download-artifact/pull/252)

**Full Changelog**:
https://github.com/actions/download-artifact/compare/v4...v4.1.0

</details>

<details>
<summary>actions/upload-artifact (actions/upload-artifact)</summary>

###
[`v4.6.1`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.6.1)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.6.0...v4.6.1)

#### What's Changed

- Update to use artifact 2.2.2 package by
[@&#8203;yacaovsnc](https://redirect.github.com/yacaovsnc) in
[https://github.com/actions/upload-artifact/pull/673](https://redirect.github.com/actions/upload-artifact/pull/673)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4...v4.6.1

###
[`v4.6.0`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.6.0)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.5.0...v4.6.0)

##### What's Changed

- Expose env vars to control concurrency and timeout by
[@&#8203;yacaovsnc](https://redirect.github.com/yacaovsnc) in
[https://github.com/actions/upload-artifact/pull/662](https://redirect.github.com/actions/upload-artifact/pull/662)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4...v4.6.0

###
[`v4.5.0`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.5.0)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.4.3...v4.5.0)

##### What's Changed

- fix: deprecated `Node.js` version in action by
[@&#8203;hamirmahal](https://redirect.github.com/hamirmahal) in
[https://github.com/actions/upload-artifact/pull/578](https://redirect.github.com/actions/upload-artifact/pull/578)
- Add new `artifact-digest` output by
[@&#8203;bdehamer](https://redirect.github.com/bdehamer) in
[https://github.com/actions/upload-artifact/pull/656](https://redirect.github.com/actions/upload-artifact/pull/656)

##### New Contributors

- [@&#8203;hamirmahal](https://redirect.github.com/hamirmahal) made
their first contribution in
[https://github.com/actions/upload-artifact/pull/578](https://redirect.github.com/actions/upload-artifact/pull/578)
- [@&#8203;bdehamer](https://redirect.github.com/bdehamer) made their
first contribution in
[https://github.com/actions/upload-artifact/pull/656](https://redirect.github.com/actions/upload-artifact/pull/656)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.4.3...v4.5.0

###
[`v4.4.3`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.4.3)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.4.2...v4.4.3)

#### What's Changed

- Undo indirect dependency updates from
[#&#8203;627](https://redirect.github.com/actions/upload-artifact/issues/627)
by [@&#8203;joshmgross](https://redirect.github.com/joshmgross) in
[https://github.com/actions/upload-artifact/pull/632](https://redirect.github.com/actions/upload-artifact/pull/632)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.4.2...v4.4.3

###
[`v4.4.2`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.4.2)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.4.1...v4.4.2)

#### What's Changed

- Bump `@actions/artifact` to 2.1.11 by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/627](https://redirect.github.com/actions/upload-artifact/pull/627)
    -   Includes fix for relative symlinks not resolving properly

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.4.1...v4.4.2

###
[`v4.4.1`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.4.1)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.4.0...v4.4.1)

#### What's Changed

- Add a section about hidden files by
[@&#8203;joshmgross](https://redirect.github.com/joshmgross) in
[https://github.com/actions/upload-artifact/pull/607](https://redirect.github.com/actions/upload-artifact/pull/607)
- Add workflow file for publishing releases to immutable action package
by [@&#8203;Jcambass](https://redirect.github.com/Jcambass) in
[https://github.com/actions/upload-artifact/pull/621](https://redirect.github.com/actions/upload-artifact/pull/621)
- Update
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
to latest version, includes symlink and timeout fixes by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/625](https://redirect.github.com/actions/upload-artifact/pull/625)

#### New Contributors

- [@&#8203;Jcambass](https://redirect.github.com/Jcambass) made their
first contribution in
[https://github.com/actions/upload-artifact/pull/621](https://redirect.github.com/actions/upload-artifact/pull/621)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.4.0...v4.4.1

###
[`v4.4.0`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.4.0)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.3.6...v4.4.0)

#### Notice: Breaking Changes ⚠️

We will no longer include hidden files and folders by default in the
`upload-artifact` action of this version. This reduces the risk that
credentials are accidentally uploaded into artifacts. Customers who need
to continue to upload these files can use a new option,
`include-hidden-files`, to continue to do so.

See ["Notice of upcoming deprecations and breaking changes in GitHub
Actions
runners"](https://github.blog/changelog/2024-08-19-notice-of-upcoming-deprecations-and-breaking-changes-in-github-actions-runners/)
changelog and [this
issue](https://redirect.github.com/actions/upload-artifact/issues/602)
for more details.

#### What's Changed

- Exclude hidden files by default by
[@&#8203;joshmgross](https://redirect.github.com/joshmgross) in
[https://github.com/actions/upload-artifact/pull/598](https://redirect.github.com/actions/upload-artifact/pull/598)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.3.6...v4.4.0

###
[`v4.3.6`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.3.6)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.3.5...v4.3.6)

#### What's Changed

- Revert to
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
2.1.8 by [@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/594](https://redirect.github.com/actions/upload-artifact/pull/594)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4...v4.3.6

###
[`v4.3.5`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.3.5)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.3.4...v4.3.5)

#### What's Changed

- Bump
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
to v2.1.9 by [@&#8203;robherley](https://redirect.github.com/robherley)
in
[https://github.com/actions/upload-artifact/pull/588](https://redirect.github.com/actions/upload-artifact/pull/588)
- Fixed artifact upload chunk timeout logic
[#&#8203;1774](https://redirect.github.com/actions/toolkit/pull/1774)
- Use lazy stream to prevent issues with open file limits
[#&#8203;1771](https://redirect.github.com/actions/toolkit/pull/1771)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.3.4...v4.3.5

###
[`v4.3.4`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.3.4)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.3.3...v4.3.4)

#### What's Changed

- Update
[@&#8203;actions/artifact](https://redirect.github.com/actions/artifact)
version, bump dependencies by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/584](https://redirect.github.com/actions/upload-artifact/pull/584)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.3.3...v4.3.4

###
[`v4.3.3`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.3.3)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.3.2...v4.3.3)

#### What's Changed

- updating `@actions/artifact` dependency to v2.1.6 by
[@&#8203;eggyhead](https://redirect.github.com/eggyhead) in
[https://github.com/actions/upload-artifact/pull/565](https://redirect.github.com/actions/upload-artifact/pull/565)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.3.2...v4.3.3

###
[`v4.3.2`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.3.2)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.3.1...v4.3.2)

#### What's Changed

- Update release-new-action-version.yml by
[@&#8203;konradpabjan](https://redirect.github.com/konradpabjan) in
[https://github.com/actions/upload-artifact/pull/516](https://redirect.github.com/actions/upload-artifact/pull/516)
- Minor fix to the migration readme by
[@&#8203;andrewakim](https://redirect.github.com/andrewakim) in
[https://github.com/actions/upload-artifact/pull/523](https://redirect.github.com/actions/upload-artifact/pull/523)
- Update readme with v3/v2/v1 deprecation notice by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/561](https://redirect.github.com/actions/upload-artifact/pull/561)
- updating `@actions/artifact` dependency to v2.1.5 and `@actions/core`
to v1.0.1 by [@&#8203;eggyhead](https://redirect.github.com/eggyhead) in
[https://github.com/actions/upload-artifact/pull/562](https://redirect.github.com/actions/upload-artifact/pull/562)

#### New Contributors

- [@&#8203;andrewakim](https://redirect.github.com/andrewakim) made
their first contribution in
[https://github.com/actions/upload-artifact/pull/523](https://redirect.github.com/actions/upload-artifact/pull/523)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4.3.1...v4.3.2

###
[`v4.3.1`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.3.1)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.3.0...v4.3.1)

- Bump
[@&#8203;actions/artifacts](https://redirect.github.com/actions/artifacts)
to latest version to include [updated GHES host
check](https://redirect.github.com/actions/toolkit/pull/1648)

###
[`v4.3.0`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.3.0)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.2.0...v4.3.0)

#### What's Changed

- Reorganize upload code in prep for merge logic & add more tests by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/504](https://redirect.github.com/actions/upload-artifact/pull/504)
- Add sub-action to merge artifacts by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/505](https://redirect.github.com/actions/upload-artifact/pull/505)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4...v4.3.0

###
[`v4.2.0`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.2.0)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.1.0...v4.2.0)

#### What's Changed

- Ability to overwrite an Artifact by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/501](https://redirect.github.com/actions/upload-artifact/pull/501)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4...v4.2.0

###
[`v4.1.0`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.1.0)

[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.0.0...v4.1.0)

#### What's Changed

- Add migrations docs by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/482](https://redirect.github.com/actions/upload-artifact/pull/482)
- Update README.md by
[@&#8203;samuelwine](https://redirect.github.com/samuelwine) in
[https://github.com/actions/upload-artifact/pull/492](https://redirect.github.com/actions/upload-artifact/pull/492)
- Support artifact-url output by
[@&#8203;konradpabjan](https://redirect.github.com/konradpabjan) in
[https://github.com/actions/upload-artifact/pull/496](https://redirect.github.com/actions/upload-artifact/pull/496)
- Update readme to reflect new 500 artifact per job limit by
[@&#8203;robherley](https://redirect.github.com/robherley) in
[https://github.com/actions/upload-artifact/pull/497](https://redirect.github.com/actions/upload-artifact/pull/497)

#### New Contributors

- [@&#8203;samuelwine](https://redirect.github.com/samuelwine) made
their first contribution in
[https://github.com/actions/upload-artifact/pull/492](https://redirect.github.com/actions/upload-artifact/pull/492)

**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4...v4.1.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

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

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

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/astral-sh/uv).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDAuMCIsInVwZGF0ZWRJblZlciI6IjM5LjIwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJpbnRlcm5hbCJdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-15 15:11:23 -05:00
Charlie Marsh 4d989b3630
Instruct Renovate to pin GitHub Actions based on SHA (#12189)
## Summary

The intent here is that all actions should be pinned to an immutable SHA
(but that Renovate should annotate each SHA with the corresponding
SemVer version).
2025-03-15 17:24:33 +00:00
Charlie Marsh dab1ea2272
Replace change detection GitHub Action (#12188)
## Summary

`tj-actions/changed-files` no longer exists due to a malicious commit.
This PR replaces it with a minimal shell script to get us unblocked.
2025-03-15 13:12:00 -04:00
Zanie Blue 553bcccb6a
Add support for dynamic musl Python distributions on x86-64 Linux (#12121)
Following the upstream release and #12120, removes gating preventing
installation of the managed musl Python versions.

Of note

- The filtering of musl Python distributions has moved from the Rust
runtime to the metadata fetcher
- The filtering is now conditional on the PBS release date, removing all
old static musl distributions
- We could support the `+static` musl downloads in the future; right
now, they are deprioritized when selecting a variant
- I added test to CI which uses Alpine and installs numpy
2025-03-11 18:14:10 -05:00
konsti b2a0ea3701
Integration test uv_build package (#12058)
I somehow missed running an actual integration test of the PEP 517 API
in CI and the python shim was using the old uv CLI interface still.

The tests include pip, uv and `python -m build`. They must be a in CI
job since we can't depend on the Python package in the Rust tests (we
only get the binary in `cargo test`, not the `uv_build` wheel).
2025-03-07 23:40:53 +01:00
Zanie Blue 0798c3565d
Fix `PyPI` typo in publish workflow (#12051) 2025-03-07 11:10:23 -06:00
Zanie Blue 7a56aef7d1
Revert "Run the `uv-build` publish sequentially after `uv` (#12022)" (#12024)
This was not the problem
2025-03-06 16:53:39 -06:00
Zanie Blue 15bc1e7c03
Fix upload name for macOS wheels (#12023)
These were missed in the original PR and consequently not uploaded
2025-03-06 16:53:29 -06:00
Zanie Blue ef1243c6e8
Run the `uv-build` publish sequentially after `uv` (#12022)
In an attempt to resolve a trusted publishing failure
2025-03-06 15:27:57 -06:00
konsti bf4c7afe8b
A minimal build backend for uv: uv_build (#11446)
uv itself is a large package with many dependencies and lots of
features. To build a package using the uv build backend, you shouldn't
have to download and install the entirety of uv. For platform where we
don't provide wheels, it should be possible and fast to compile the uv
build backend. To that end, we're introducing a python package that
contains a trimmed down version of uv that only contains the build
backend, with a minimal dependency tree in rust.

The `uv_build` package is publish from CI just like uv itself. It is
part of the workspace, but has much less dependencies for its own
binary. We're using cargo deny to enforce that the network stack is not
part of the dependencies. A new build profile ensure we're getting the
minimum possible binary size for a rust binary.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2025-03-06 13:27:20 -06:00
Zanie Blue b7f98f1ff2
Use the Depot Ubuntu runners instead of GitHub for release workflows (#11948)
See

-
https://opensource.axo.dev/cargo-dist/book/reference/config.html#github-custom-runners
- https://github.com/axodotdev/cargo-dist/issues/1760
- #11935
2025-03-04 13:28:14 -06:00
konsti 6132d252d6
Remove unused `UV_STACK_SIZE` env vars (#11957)
These were overlooked in #10479
2025-03-04 16:53:34 +00:00
Zanie Blue f44aba0a96
Run the Docker build workflow when we touch project or toolchain metadata (#11938)
I noticed that https://github.com/astral-sh/uv/pull/11936 did not run
the Docker builds, nor did #11934

We should run these when the relevant files change so there aren't
surprises at release time!

Updates the `build-binaries` workflow to include toolchain version
changes and `.cargo/config.toml` changes too.
2025-03-04 08:36:20 -06:00
Zanie Blue f0ec9fd44a
Bump version to 0.6.4 (#11934) 2025-03-03 16:04:11 -06:00
Zanie Blue 326d0c460a
Add emulated test for x86-64 Python on aarch64 Windows (#11626)
Coverage of https://github.com/astral-sh/uv/pull/11625 for unmanaged
Python.
2025-02-19 12:02:13 -06:00
konsti 3634a4d8e9
More consistent `build-binaries.yml` (#11478)
For uv-build, we need to duplicate a lot of the `build-binaries.yml`
logic to build another source distribution and wheel. In preparation for
that I tried to make the invocations more consistent, to make it easier
to review the changes when adding the `uv-build` builds on top.

Split out from #11446

---------

Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
2025-02-18 11:36:26 -06:00
samypr100 553b3a7c34 Bump alpine default tag to 3.21 (#11157)
Alpine 3.21 has been released for a few months and it's now being used
officially under `alpine` based [python
images](https://hub.docker.com/_/python), hence our python-alpine based
images has been using 3.21 since uv 0.5.8 under the hood.

This could arguably be `breaking` as we're dropping alpine3.20 top-level
tag, so it could be a good candidate for 0.6.0.

Alternatively, we can keep support for 3.20 and make this non-breaking
by simply repointing alpine to now be 3.21 and keeping the 3.20 tag
around.
2025-02-13 16:17:49 -06:00
Zanie Blue 4badcef3d8
Disable pip cache in Windows system test job (#11403)
I have no idea why we'd want the cache enabled here anyway?

Closes https://github.com/astral-sh/uv/issues/11397
2025-02-10 20:36:00 +00:00
Zanie Blue e22ecee36b
Respect `no-build` label in Docker image builds (#11333)
e.g., https://github.com/astral-sh/uv/pull/11329 is runner Docker image
builds but should not
2025-02-08 02:17:59 +00:00
Zanie Blue 1f963d1b89
Move content from the `mkdocs.public.yml` into the template (#11246)
Closes https://github.com/astral-sh/uv/issues/11242
2025-02-05 16:13:46 +00:00
Charlie Marsh ee2bdc21fa
Disable wheel testing for `powerpc64le-unknown-linux-gnu` (#11229)
## Summary

I need to look into this later, but the test step is failing to install
Python:
https://github.com/astral-sh/uv/actions/runs/13148286589/job/36694160839.
We already disable this for the non-`le` variant, so this seems ok to
revisit.
2025-02-04 22:46:08 -05:00
FishAlchemist 49b85d2e65
Add ``last updated`` for document (#11164)
## Summary

![image](https://github.com/user-attachments/assets/75431f9f-debe-435d-a02e-d216be7a3a01)

![image](https://github.com/user-attachments/assets/2d1b895e-4878-410e-90ff-ff8e932cbf24)
Display the last document update time, excluding any automatically
generated parts of the document, while ensuring that Google can
accurately read and recognize the webpage's time.

Note that I do not have permission to update
``requirements-insiders.txt``


Google time info
*
https://developers.google.com/search/blog/2019/03/help-google-search-know-best-date-for
*
https://developers.google.com/search/docs/appearance/structured-data/article#amp

Similar https://github.com/astral-sh/uv/pull/11162
Closes #11148
## Test Plan
uvx --with-requirements docs/requirements.txt -- mkdocs serve -f
mkdocs.public.yml --strict

![image](https://github.com/user-attachments/assets/6e8cd609-2e60-489c-97cc-fb28aa3204e0)
The correct format is actually ``2024-08-08T22:01:08Z``, but Google
Search happens to be lenient and accepts this format.

![image](https://github.com/user-attachments/assets/2ec8ce98-49ea-403b-bbd2-3d0d5630a562)
2025-02-03 22:28:47 -05:00
konsti c54dbcbcc2
Use dev drive for trampoline CI to avoid timeout (#11015)
Sometimes that job is just slow:
https://github.com/astral-sh/uv/actions/runs/12996921221/job/36247398606
2025-02-03 15:38:56 +01:00
Martijn Pieters 47f80a62c4
Sign docker images using cosign (#8685)
cosign uses the GitHub action ID token to retrieve an ephemeral code
signing certificate from Fulcio, and store the signature in the Rekor
transparency log.

Once an image has been successfully signed, you should be able to verify
the signature with:

```sh
cosign verify ghcr.io/astral-sh/uv:latest --certificate-identity-regexp='.*' --certificate-oidc-issuer-regexp='.*'
```

Closes #8670
2025-01-31 09:00:23 -06:00
Zanie Blue 24c70240d5
Link to our MRE documentation in the issue template (#11045) 2025-01-28 23:09:04 -06:00
Zanie Blue a6d887a37e
Include Rust toolchain in cache in trampoline test job (#11019) 2025-01-28 14:26:07 +00:00
Zanie Blue e8d50153d0
Update name of "Build binary" job to highlight that these are the "release" binaries (#10990)
I found this confusing since we have `build binary` jobs in regular CI
2025-01-27 11:48:38 -06:00
konsti ad60f8da77
Use install action for cargo shear (#10983) 2025-01-27 18:06:17 +01:00
Zanie Blue 1ef47aa1d5
Only move the `.cargo` directory if it exists (#10938)
which it usually does... but on some runners it can be missing now?
2025-01-24 15:39:29 +00:00
Zanie Blue 98e7cd00c8
Add Windows aarch64 to the release binaries (#10885)
Following test coverage from #10540 
Closes https://github.com/astral-sh/uv/issues/1141
2025-01-24 09:24:22 -06:00
Zanie Blue 0008ec69c4
Run multiple commands in ecosystem tests (#10920) 2025-01-24 09:18:21 -06:00
Zanie Blue 9a2d5fd358
Add ecosystem test case for `pydantic/pydantic-core` (#10917) 2025-01-23 17:05:13 -06:00
Zanie Blue 10654cb8c2
Fix render of matrix arch for system conda tests (#10914) 2025-01-23 21:31:59 +00:00
Zanie Blue a05b0e0346
Separate musl and libc linux builds in CI (#10830)
We have a lot of jobs downstream of the `build-binary-linux` job, but
the job is significantly slower than the other binary builds because we
need to configure musl. Instead, we split this into two jobs (as it was
before https://github.com/astral-sh/uv/pull/2309#discussion_r1520101330)
to speed things up.

The libc job takes ~1m and its _downstream_ jobs finish before the musl
build does. The musl job takes ~5m.
2025-01-23 15:19:26 -06:00
Zanie Blue 26210cc0e6
Bump cargo-dist version to 0.28.0 (#10884)
Some installer improvements; see
https://github.com/axodotdev/cargo-dist/blob/main/CHANGELOG.md#version-0280-2025-01-08
2025-01-23 10:49:53 -06:00
konsti db4ab9dc8a
Install and remove managed Python to and from the Windows Registry (PEP 514) (#10634)
## Summary

In preview mode on windows, register und un-register the managed python build standalone installations in the Windows registry following PEP 514.

We write the values defined in the PEP plus the download URL and hash. We add an entry when installing a version, remove an entry when uninstalling and removing all values when uninstalling with `--all`. We update entries only by overwriting existing values, there is no "syncing" involved.

Since they are not official builds, pbs gets a prefix. `py -V:Astral/CPython3.13.1` works, `py -3.13` doesn't.

```
$ py --list-paths                                            
 -V:3.12 *        C:\Users\Konsti\AppData\Local\Programs\Python\Python312\python.exe
 -V:3.11.9        C:\Users\Konsti\.pyenv\pyenv-win\versions\3.11.9\python.exe
 -V:3.11          C:\Users\micro\AppData\Local\Programs\Python\Python311\python.exe
 -V:3.8           C:\Users\micro\AppData\Local\Programs\Python\Python38\python.exe
 -V:Astral/CPython3.13.1 C:\Users\Konsti\AppData\Roaming\uv\data\python\cpython-3.13.1-windows-x86_64-none\python.exe
```

Registry errors are reported but not fatal, except for operations on the company key since it's not bound to any specific python interpreter.

On uninstallation, we prune registry entries that have no matching Python installation (i.e. broken entries).

The code uses the official `windows_registry` crate of the `winreg` crate.

Best reviewed commit-by-commit.

## Test Plan

We're reusing an existing system check to test different (un)installation scenarios.
2025-01-23 14:13:41 +00:00
Divyanshu Kalra 027c3f5e67
Add Windows aarch64 build and test job to CI
Based on discussion in https://github.com/astral-sh/uv/pull/10306, this
adds building aarch64 exe using x86 runner. See:
https://github.com/astral-sh/uv/pull/10402#issuecomment-2579094192

Addresses: #1141

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2025-01-22 22:38:50 -06:00
Charlie Marsh 183fe403c6
Disable `.egg-info` tests via `slow-tests` feature on Windows and macOS (#10872)
## Summary

These are super slow on Windows and it's not critical to test them on
that platform. Let's just do the lazy thing.
2025-01-22 21:39:04 +00:00
Zanie Blue a539d33021
Update smoke test scripts to fail on first error (#10831)
These continue on failure on Windows, which is annoying.
2025-01-22 15:00:50 -06:00
Zanie Blue fd16988a4b
Move smoke tests into dedicated jobs and build `uvx` explicitly (#10824)
In the interest of expanding these tests and debugging weird behaviors,
I've moved the smoke tests out of the `cargo test` job and into
dedicated `smoke test` jobs. We explicitly build `uvx` in the `build
binary` jobs instead of relying on the implicit build for the test run.

I also added a `uvx` test case to the smoke tests: `uvx ruff --version`
2025-01-21 16:46:12 -06:00
Zanie Blue 6a5e5b33f2
Move `cargo` to the Dev Drive in Windows CI (#10656)
This successfully changed the nextest install to target the dev drive

```
info: cargo-nextest installed at /e/.cargo/bin/cargo-nextest.exe
```
2025-01-21 12:43:54 -06:00
Zanie Blue 399086d28f
Disable the distutils setuptools shim during interpreter query (#10819)
Addresses
https://github.com/astral-sh/uv/issues/4204#issuecomment-2604983670

Original context in https://github.com/astral-sh/uv/issues/2302
2025-01-21 18:34:13 +00:00
Zanie Blue ad2ef7331a
Add issue templates (#10786)
Demo at https://github.com/zanieb/uv/issues

I think the next steps are to

- Move the "Build failures" document to a dedicated "Troubleshooting"
section
- Add more documentation on how to create an MRE
- Add more troubleshooting pages
2025-01-21 11:25:07 -06:00
Zanie Blue f9539d5a8e
Remove old issue template (#10787)
It is not used anymore because of the GitHub issue preview
2025-01-21 09:03:19 -06:00
Zanie Blue 581a82d370
Install Python via uv in Windows CI (#10657)
Python 3.8 is a GHA cache miss now, so it is actually like 30-45s. uv
may be faster
2025-01-21 09:02:14 -06:00
Zanie Blue 4f31b44eac
Improve log when distutils is missing (#10713)
See https://github.com/astral-sh/uv/issues/4204 for motivation

This doesn't really reach the user experience I'd expect — i.e., we end
up saying a virtual environment "does not exist" which is a little
silly. However, I think improving the error messaging on interpreter
queries in general should be solved separately. I did one small
"general" change in
89e11d0222
— otherwise we don't show the message at all.

---------

Co-authored-by: konsti <konstin@mailbox.org>
2025-01-20 17:29:29 +00:00
Zanie Blue 896435faec
Use `D:` drive for Windows CI (#10180)
When using the standard Windows runners (as opposed to the _larger_
GitHub runners), an undocumented `D:` drive is available and performant.
We can save some money on by using this on a standard runner instead of
a larger runner with an ReFS drive. Switching to the `D:` drive was not
acceptable for `cargo test` >25m runtime.

Inspired by https://github.com/pypa/pip/pull/13129
See https://github.com/actions/runner-images/issues/8755

Timings (grain of salt — GitHub is super noisy):

- clippy: 2m 18s -> 2m 11s
- build binary: 2m 3s -> 2m 35s
- trampoline check (x86-64): 2m 32s -> 1m 50s (other architectures
similar)
- trampoline test (x86-64): 4m 12s -> 6m 7s
- trampoline test (i686): 6m 44s -> 5m 35s
2025-01-17 13:57:09 -06:00
Zanie Blue 75a1a47859
Improve performance of our test drive in Windows CI (#10651)
Previously, we couldn't use a DevDrive
(https://github.com/astral-sh/uv/pull/3522#issuecomment-2111448930)
because our Windows version was not sufficient.

Recently, I upgraded our larger runners to Windows 2025 preview
(https://github.com/astral-sh/uv/pull/10298) which I presume has support
for this.

I removed ReFS in
953c3535c3
which didn't seem to do anything to performance.

I also found some notes on "trusted" DevDrives and "disabling anti-virus
filtering" which I simply have to try.
2025-01-16 12:07:09 -06:00
Aria Desires 80ac8db7db
Always spawn a main2 thread to normalize main stack size issues (#10479)
Also removes UV_STACK_SIZE and uses RUST_MIN_STACK instead, tweaking
docs to reflect the differences.

Fixes #10367
2025-01-14 22:35:17 -05:00
Charlie Marsh 5bc09a1e9e
Revert "improve shell compatibility of venv activate scripts (#10397)" (#10497)
## Summary

This reverts commit 2f7f9ea571
(https://github.com/astral-sh/uv/pull/10397). We're seeing some
user-reported failures, so we need to investigate further before
re-shipping.

Re-opens https://github.com/astral-sh/uv/issues/7480.

Closes https://github.com/astral-sh/uv/issues/10487.
2025-01-11 09:23:07 -05:00
Zanie Blue 68bfa5b5b8
Avoid Docker rate limits by logging into DockerHub (#10400)
The latest release flaked failing to fetch the buildx image, which is
reportedly due to rate limits. Last I checked, DockerHub enforces much
stricter limits on unauthenticated requests. I added a bot account and a
corresponding read-only token.
2025-01-08 18:46:24 +00:00
Aria Desires 2f7f9ea571
improve shell compatibility of venv activate scripts (#10397)
The shellcheck action we uses misses some files, so they fell out of
spec for what we support. This PR first and foremost adds them to the
scanning list, and then fixes the issues found.

Fixes #7480
2025-01-08 13:12:29 -05:00
Zanie Blue bbf9558b16
Rename CI runners and use Windows 2025 preview on large runners (#10298)
I'm renaming our runners to be more explicit about their size,
architecture, and version.

Switching to Windows 2025 over 2022 in some of our jobs in the hope that
it's faster.
2025-01-05 14:29:37 -06:00
Charlie Marsh d1b1da5ac1
Upgrade cargo-dist to v0.27.0 (#10141)
## Summary

Required peer to https://github.com/astral-sh/uv/pull/10115.
2024-12-24 08:24:14 -05:00
renovate[bot] 9d417da4e1
Update astral-sh/setup-uv action to v5 (#10116) 2024-12-23 08:47:58 -05:00
Zanie Blue 5e7f80ea46
Disable Depot runner for macOS (#9976)
Use GitHub instead; Depot do not provide the necessary concurrency to
use this here and in `python-build-standalone`
2024-12-17 11:20:47 -06:00
konsti b7df5dbaf3
Avoid `liblzma-dev` system dep in uv-dev and uv-bench (#9933)
Enable `lzma-sys/static` through the performance feature not only in uv,
but in uv-dev and uv-bench too, to avoid the system dependency on
`liblzma-dev`.

Ref #9880
2024-12-17 16:12:33 +01:00
Charlie Marsh bee54039b1
Add lzma to benchmark install (#9888) 2024-12-13 16:54:20 -05:00
Zanie Blue d8f945a100
Install `liblzma-dev` in CI (#9880) 2024-12-13 14:10:33 -06:00
Charlie Marsh 441ed3bdcc
Remove `powerpc64le-unknown-linux-musl` target (#9810)
## Summary

This is blocking the release (#9793). We seem to have hit some sort of
limit that's causing builds to fail on this target. It's a Tier 3 Rust
target with _unknown_ (???) `std` support (see the question mark
[here](https://doc.rust-lang.org/rustc/platform-support.html)).
2024-12-11 09:30:50 -05:00
Zanie Blue f7d647e81d
Test binary builds on `Cargo.lock` changes (#9792)
This would be helpful to know if the regression was caused by a
dependency update.
2024-12-10 21:13:36 -05:00
Zanie Blue f7f300e608
Disable checkout during FreeBSD tests (#9670)
To save on that disk space and speed!
2024-12-06 08:28:08 -06:00
Zanie Blue 0805242ea2
Test `venv` in 3.13t integration test (#9665) 2024-12-05 20:57:08 -06:00
Zanie Blue d7b74f964e
Fix FreeBSD test by avoiding expensive copy of the uv binary (#9628) 2024-12-04 05:33:10 +00:00
Zanie Blue e311b0424d
Disable freebsd test until we resolve the upstream problem (#9620)
See

- https://github.com/acj/freebsd-firecracker/issues/1
- https://github.com/acj/freebsd-firecracker-action/issues/1
- #9619
2024-12-03 15:04:17 -06:00
Zanie Blue b70c4f30ee
Add `Cargo.toml` to triggers for binary test builds (#9616) 2024-12-03 14:13:32 -06:00
konsti 0b0d0f44f8
Publish: Warn when keyring has no password (#8827)
When trying to upload without a password but with the keyring, check
that the keyring has a password for the upload URL and username and warn
if it doesn't.

Fixes #8781
2024-11-27 20:54:49 +01:00
Zanie Blue ba94d85d36
Allow disabling (most of) CI with `no-test` label (#9456) 2024-11-26 17:16:08 -06:00
Jo 77116bef26
windows ci: Run `cargo clippy` in the dev drive workspace to reuse the cache (#9411)
## Summary

In the Windows Clippy job, the workspace is transferred to
`UV_WORKSPACE`. However, `cargo clippy` continues to execute in the
`github.workspace`, and `Swatinem/rust-cache` only caches the
`UV_WORKSPACE/target`, resulting in `cargo clippy` having no cache.

This adjustment will take effect when any changes are made to
`Cargo.toml` or `Cargo.lock`, prompting `Swatinem/rust-cache` to updat
the cache.
2024-11-25 15:12:43 -06:00
renovate[bot] 064fcd92af
Update astral-sh/setup-uv action to v4 (#9407) 2024-11-24 20:48:57 -05:00
konsti de2e9cd0ff
Increase UV_STACK_SIZE to 3MB (#9311)
We're seeing CI failures on windows
2024-11-21 11:46:33 +00:00
Zanie Blue 6eeb515a8a
Use larger runners for bottleneck builds of release artifacts (#9239)
Uses a different runner for builds that take >15m.

Most of the builds finish in ~10 minutes.
2024-11-19 14:35:59 -06:00
Charlie Marsh 465588f6c1
Enable `zlib-rs` on all platforms (#9202)
## Summary

Let's see if these build now. They failed back when we had a CMake
dependency, and had to build `zlib-ng`.
2024-11-18 11:21:58 -05:00
Zanie Blue 14812ff79b
Use Depot runners instead of GitHub larger runners for Unix (#9154) 2024-11-15 17:07:53 -06:00
konsti 874aa29b57
Pin publish test to 3.12 (#8951)
The bump to 3.13 broke the test
2024-11-10 15:43:47 +01:00
Mathieu Kniewallner ecb3e98da0
ci: validate project metadata (#8973)
## Summary

As per https://github.com/astral-sh/uv/pull/8943#discussion_r1835065562,
adding a CI step to validate project metadata. Documentation for the
tool: https://validate-pyproject.readthedocs.io/en/stable/readme.html.
`store` is an extra that uses [this
package](https://github.com/henryiii/validate-pyproject-schema-store) to
get a weekly update of the schema in SchemaStore.

## Test Plan

Step passes on CI, and testing the same command locally while
voluntarily using a wrong classifier fails:
```console
$ uvx --from 'validate-pyproject[all,store]' validate-pyproject pyproject.toml
Invalid file: pyproject.toml
[ERROR] `project.classifiers[5]` must be trove-classifier
```
2024-11-09 08:48:45 -06:00
Zanie Blue 7f9ab17577
Upgrade to cargo-dist `0.25.2-prerelease.3` (#8958)
Gets us the upstream fix
(https://github.com/axodotdev/cargo-dist/pull/1538Z) for
https://github.com/axodotdev/axoupdater/issues/210 so we don't need to
patch releases manually for self update to work.

Includes a few other changes, i.e., they validate checksums now.
2024-11-08 17:08:23 -06:00
Zanie Blue 55502842c0 Use 3.13 in CI (#8014) 2024-11-07 14:29:54 -06:00
Charlie Marsh 2340d73e33
Upgrade to cargo-dist v0.25.1 (#8873)
## Summary

This gets us access to `UV_INSTALLER_GITHUB_BASE_URL` and
`UV_INSTALLER_GHE_BASE_URL`.

See: https://github.com/axodotdev/cargo-dist/releases/tag/v0.25.1.
2024-11-06 21:48:43 -05:00
Jo 738f4245a5
Add `docs/configuration/environment.md` to code change list (#8859)
See #8858, the `cargo dev generate-all` step should not be skipped.
2024-11-06 11:44:42 -05:00
Jo 814b4d159c
Add MSRV build to CI (#8855)
## Summary

Closes #8451
2024-11-06 11:22:13 -05:00
Jo 9f81db7d1d
Use cache in windows clippy job (#8852)
Place the `Swatinem/rust-cache@v2` step after `setup-dev-drive.ps1` to
ensure the correct directories are cached.
2024-11-05 23:05:34 -06:00
Zanie Blue 8d3408fe39
Add support for installing versioned Python executables on Windows (#8663)
Incorporating #8637 into #8458 

- Adds `python-managed` feature selection to Windows CI for `python
install` tests
- Adds trampoline sniffing utilities to `uv-trampoline-builder`
- Uses a trampoline to install Python executables into the `PATH` on
Windows
2024-10-31 15:58:35 +00:00
Zanie Blue 4dd36b799f
Install versioned Python executables into the bin directory during `uv python install` (#8458)
Updates `uv python install` to link `python3.x` in the executable
directory (i.e., `~/.local/bin`) to the the managed interpreter path.

Includes

- #8569 
- #8571 

Remaining work

- #8663 
- #8650 
- Add an opt-out setting and flag
- Update documentation
2024-10-30 14:13:20 +00:00
Zanie Blue c335dc5e5d
Add a trampoline variant that just executes `python` (#8637)
Currently, our trampoline is used to convert `<command> [args]` to
`python <command> [args]` for script entrypoints installed into virtual
environments. For #8458, it'd be nice to convert a shim `python3.12
[args]` to `python [args]`. Here, we modify the trampolines to support
this use-case.

The only change we really need here is to avoid injecting `<command>`
into the child process. We change the "magic number" at the end of the
trampoline executables from `UVUV` to `UVSC` and `UVPY` which define
"script" and "python" variants to the trampoline. We then omit the
`<command>` injection in the latter case. We also omit writing the zip
script payload.

To support construction of the new variant, a new
`uv-trampoline-builder` crate is introduced — this avoids requirements
on `uv-install-wheel` in future work. I also use `uv-trampoline-builder`
to consolidate some of the test setup for `uv-trampoline`.

There should be no backwards compatibility concerns, since trampolines
are fully self-referential.

I rebased to fix the commits at the end, as this took many iterations to
get working via CI. This should roughly be reviewable by commit if you
prefer.
2024-10-29 09:21:15 -05:00
Zanie Blue e86c52d39c
Add note about trampoline tests on aarch64 (#8643)
Similar to https://github.com/astral-sh/uv/pull/8642, not sure why this
is incomplete.

We'll see if it works.
2024-10-28 19:53:23 +00:00
Zanie Blue 7948441121
Actually perform checks on alternate trampoline platforms (#8642)
It seems unintentional that we basically did nothing on these
alternative platforms? It seems like an artifact from some previous
change.

I'm not sure it's worth running Clippy multiple times. We could also
just reduce the matrix here.
2024-10-28 14:12:36 -05:00
Hamir Mahal dff507702b
fix: usage of `a deprecated Node.js version` in CI (#8506)
## Summary

[`ci.yml`](https://github.com/astral-sh/uv/blob/main/.github/workflows/ci.yml)
uses
[`gabrielfalcao/pyenv-action@v18`](https://github.com/gabrielfalcao/pyenv-action/),
which [uses `a deprecated Node.js
version`](https://github.com/astral-sh/uv/actions/runs/11483963555).

This pull request aims to remove any usage of `a deprecated Node.js
version` from
[`ci.yml`](https://github.com/astral-sh/uv/blob/main/.github/workflows/ci.yml).

<!-- What's the purpose of the change? What does it do, and why? -->

## Test Plan

I attempted to test this but [canceled the run on my
fork](https://github.com/hamirmahal/uv/actions/runs/11484989508/job/31964058415)
after it waited for a runner for over 10 minutes with no result.

<!-- How was it tested? -->

---------

Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
2024-10-23 22:28:34 -04:00
Zanie Blue 76bcb89571
Use native Windows runner for trampoline checks (#8469)
As in https://github.com/astral-sh/uv/pull/8182 and #8468
2024-10-22 12:28:31 -05:00
Zanie Blue dc32b26afb
Replace `cargo xwin clippy` with native clippy run on Windows again (#8468)
Adds #8181 again

This failure is taking up way too much time and cache misses are feeling
frequent.
2024-10-22 11:28:19 -05:00
Zanie Blue ab16bf0a8c
Set `UV_LINK_MODE=copy` for Windows test runs (#8350)
Cherry-picked from #8347 

Might fix https://github.com/astral-sh/uv/issues/6940 — I'm not seeing a
failure over there after this change. I think there may be some problem
with concurrent reads of junctioned files on the DevDrive? It's really
hard to say.

We might lose some important test coverage with this change. I'm not
sure what to do about that either.
2024-10-20 13:37:41 -05:00
Zanie Blue d296e7270a
Run release builds for `macos-x86_64` on `macos-14` runners (#8327) 2024-10-18 11:01:52 -04:00
Zanie Blue c8cbd62a30
Patch Python executable name for Windows free-threaded builds (#8310)
A temporary fix for https://github.com/astral-sh/uv/issues/8298 while we
wait for my slower upstream fix at
https://github.com/indygreg/python-build-standalone/pull/373

I think we'll want this machinery anyway to ensure that the various
executable names are available? Otherwise we need to special-case all
the `python` names in `uv run`?

We don't have unit test coverage of managed downloads, so I added an
[integration
test](https://github.com/astral-sh/uv/actions/runs/11394150653/job/31703956805?pr=8310)
similar to what we have for Linux.
2024-10-17 18:27:55 -05:00
Zanie Blue 16b77e7fd4
Add a FreeBSD build to CI (#8269)
Playing with this because it's interesting and I learned about this cool
firecracker action.

Related #3370
2024-10-17 15:24:21 +00:00
konsti e0a2bc92cd
Reuse packages in test publish script (#8257) 2024-10-17 11:44:19 +02:00
Charlie Marsh cf7dbaa7a7
Update to `cargo-dist` v0.23.0 (#8270)
## Summary

Closes https://github.com/astral-sh/uv/issues/8242.
2024-10-16 16:25:03 -04:00
Zanie Blue b851ced09e
Fix selection of free-threaded interpreters during default Python discovery (#8239)
Closes https://github.com/astral-sh/uv/issues/8228

e.g., on this branch

```
❯ uv python install 3.13t 3.13
❯ cargo build
❯ cargo run -q --bin uvx -- --from build python -c "import sys; print(sys.base_prefix)"
/Users/zb/.local/share/uv/python/cpython-3.13.0-macos-aarch64-none
❯ cargo run -q --bin uvx -- -p 3.13 --from build python -c "import sys; print(sys.base_prefix)"
/Users/zb/.local/share/uv/python/cpython-3.13.0-macos-aarch64-none
❯ cargo run -q --bin uvx -- -p 3.13t --from build python -c "import sys; print(sys.base_prefix)"
/Users/zb/.local/share/uv/python/cpython-3.13.0+freethreaded-macos-aarch64-none
```

and on main

```
❯ cargo build
❯ cargo run -q --bin uvx -- --from build python -c "import sys; print(sys.base_prefix)"
Installed 3 packages in 12ms
/Users/zb/.local/share/uv/python/cpython-3.13.0+freethreaded-macos-aarch64-none
```

I want to add more test coverage around this, but I've noticed the
free-threaded discovery tests are a bit off as-is and it'll be a bigger
task. I think the recent bugs around discovery indicate we should invest
more into that test framework.
2024-10-16 14:44:32 -05:00
konsti 0c5d05d9e1
Don't run publish tests from fork (#8168)
Only the astral-sh/uv repository has the secrets.

---------

Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
2024-10-14 16:46:41 -04:00
Zanie Blue 5f33915e03
Add support for managed installs of free-threaded Python (#8100)
Closes https://github.com/astral-sh/uv/issues/7193

```

❯ cargo run -q -- python uninstall 3.13t
Searching for Python versions matching: Python 3.13t
Uninstalled Python 3.13.0 in 231ms
 - cpython-3.13.0+freethreaded-macos-aarch64-none
❯ cargo run -q -- python install 3.13t
Searching for Python versions matching: Python 3.13t
Installed Python 3.13.0 in 3.54s
 + cpython-3.13.0+freethreaded-macos-aarch64-none
❯ cargo run -q -- python install 3.12t
Searching for Python versions matching: Python 3.12t
error: No download found for request: cpython-3.12t-macos-aarch64-none
❯ cargo run -q -- python install 3.13rc3t
Searching for Python versions matching: Python 3.13rc3t
Found existing installation for Python 3.13rc3t: cpython-3.13.0+freethreaded-macos-aarch64-none
❯ cargo run -q -- run -p 3.13t python -c "import sys; print(sys.base_prefix)"
/Users/zb/.local/share/uv/python/cpython-3.13.0+freethreaded-macos-aarch64-none
```
2024-10-14 15:18:52 -05:00
samypr100 db0f0aec09
fix(ci): adjust xwin timeout and revert xwin jobs being disabled (#8187)
## Summary

Reverts #8181 and #8182.

The fix is in b849f0f, which extends the run timeout to allow xwin to
download the Windows SDK files, which can take 10+ minutes.

Closes https://github.com/rust-cross/cargo-xwin/issues/127

## Test Plan

Existing CI should pass.

## Notes

xwin jobs will take a long time the first time due to cache re-warming.
2024-10-14 15:14:46 -05:00
Zanie Blue cc9767ca1e
Disable `cargo xwin clippy` in trampoline job (#8182)
See https://github.com/rust-cross/cargo-xwin/issues/127
2024-10-14 18:29:57 +00:00
Zanie Blue 581fab6597
Replace `cargo xwin clippy` with native clippy run on Windows temporarily (#8181)
We can't have CI blocked by this. If this doesn't work or is
exceptionally slow, I'll remove the job entirely.
2024-10-14 13:19:33 -05:00
Zanie Blue 163c90184f
Fix mkdocs workflow (#8174)
GitHub changed these environments to "externally managed" (or something
changed with the setup-python action?)
2024-10-14 09:45:13 -05:00
Jo 6d868c076c
Use `uv publish` to publish itself (#8065) 2024-10-12 20:18:00 +02:00
samypr100 12a76690b2
ci(docker): support python 3.13 images (#8105)
## Summary

Closes https://github.com/astral-sh/uv/issues/8066#event-14593331489
2024-10-10 14:39:07 -05:00
Tim Felgentreff 5a8f0ad705
Update to GraalPy 24.1, remove workaround for 24.0 (#8095)
## Summary

Update CI config to test against GraalPy 24.1, which makes a workaround
in the CI config unnecessary.

## Test Plan

The updated CI config is tested.
2024-10-10 17:17:22 +02:00
Mathieu Kniewallner 36fedf7ac7
chore(renovate): move out of deprecated options (#8055) 2024-10-09 14:48:19 -05:00
konsti 1e6c64074d
Add codeberg integration test for uv publish (#8043) 2024-10-09 15:02:26 +02:00
sobolevn 56521937b7
Add shellcheck CI (#7888)
<!--
Thank you for contributing to uv! To help us out with reviewing, please
consider the following:

- Does this pull request include a summary of the change? (See below.)
- Does this pull request include a descriptive title?
- Does this pull request include references to any relevant issues?
-->

## Summary

I started learning `uv` by inspecting the source code.
I've noticed that your shell scripts are very good! Which is rare!

## Test Plan

I propose to add `shellcheck` to the CI.
It is a great tool to help finding bugs and style issues in shell code.

Techincal details:
- This CI job will only run when any `.sh` files are changed (or the job
definition file)
- It takes just several seconds even on local machine:
```
» time shellcheck -S style **/*.sh
shellcheck -S style **/*.sh  0.02s user 0.05s system 61% cpu 0.123 total
```

- It is easy to use, for example: I just fixed the single problem you
had in your code with `# shellcheck disable=SC1091`
- I am using this tool for around 8 years now and didn't have any
issues. Examples:
ca899f3b69/.github/workflows/test.yml (L22-L27)
and
https://github.com/wemake-services/wemake-django-template/blob/master/.github/workflows/shellcheck.yml

But, I understand that build / lint tools are very subjective. So, feel
free to close :)
2024-10-08 13:58:00 -05:00
Zanie Blue cd582cacab
Fix GitHub Actions integration test (#8013)
Fixes bug noted in https://github.com/astral-sh/uv/pull/8012

GitHub upgraded the 3.12 Python version so the path changed!
2024-10-08 17:53:56 +00:00
Zanie Blue 38beb2b24f
Show verbose output during integration tests (#7982) 2024-10-07 18:39:22 +00:00
Zanie Blue 0176b6f0bb
Show verbose logs during smoke test (#7984) 2024-10-07 13:28:54 -05:00
Zanie Blue 247f66249e
Ignore `UV_CACHE_DIR` during tests (#7927)
Exploring an alternative to https://github.com/astral-sh/uv/pull/7895
2024-10-04 15:12:05 +00:00
sobolevn ff1a896dd0
Ignore `UV_CACHE_DIR` in `help` tests (#7895) 2024-10-04 09:41:25 -05:00
samypr100 c708cc82fa
chore(ci): bump macos-12 intel runner to macos-13 intel runner (#7877)
## Summary

Closes https://github.com/astral-sh/uv/issues/6972

This is not breaking since `MACOSX_DEPLOYMENT_TARGET` will stay the same
(currently defaulting to 10.12) so a
`uv-x.y.z-py3-none-macosx_10_12_x86_64.whl` will still be built
2024-10-03 13:00:58 +01:00
Charlie Marsh 14507a1793
Add `uv-` prefix to all internal crates (#7853)
## Summary

Brings more consistency to the repo and ensures that all crates
automatically show up in `--verbose` logging.
2024-10-01 20:15:32 -04:00
Mathieu Kniewallner 04c79aff0a
chore(renovate): enable `regex` manager (#7820)
## Summary

Investigated
https://github.com/astral-sh/uv/pull/7807#issuecomment-2384080360, and
the reason why the PR mentioned in the comment did not work in the end
is because we only opt-in for specific managers in Renovate
configuration. By enabling
[regex](https://docs.renovatebot.com/modules/manager/regex/) manager, we
should now get proper updates to documentation references.

## Test Plan

Tested enabling specific managers (including `regex` one) in
https://github.com/mkniewallner/mkv-playground/pull/18, and Renovate was
still able to detect regex dependencies.
2024-09-30 17:28:19 -04:00
Aarni Koskela 23b010c08f
Docker: put uv and uvx in a single layer (#7697)
## Summary

Copy both `uv` and `uvx` into place in a single Dockerfile command.
[`COPY` supports multiple sources when the destination is a
directory.](https://docs.docker.com/engine/reference/builder/#copy)

As it is, e.g. `ghcr.io/astral-sh/uv:0.4.16-python3.12-bookworm-slim`
has this (screenshot from [Dive](https://github.com/wagoodman/dive)):

<img width="377" alt="Screenshot 2024-09-26 at 10 11 24"
src="https://github.com/user-attachments/assets/1ca6a0d5-95fd-4210-9a4f-0afa2300b63f">

and less layers is a Good Thing.

## Test Plan

I hope the CI pipeline will take care of testing – I couldn't get the
Docker build to finish on my machine right away (SIGKILL, so out of
memory, I guess 😄)
2024-09-26 09:19:14 -05:00
konsti f5601e2610
Clean up "performance allocators" and "performance flate2" backends (#7686)
Co-authored-by: Amos Wenger <amos@bearcove.net>
2024-09-25 15:41:40 +00:00
konsti da328379c1
Don't show deploy notification when we don't need to (#7665) 2024-09-24 19:42:13 +02:00
konsti 205bf8cabe
Implement trusted publishing (#7548)
Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
2024-09-24 16:07:20 +00:00
konsti 1995d20298
Add `uv publish`: Basic upload with username/password or keyring (#7475)
Co-authored-by: Charlie Marsh <charlie.r.marsh@gmail.com>
2024-09-24 15:33:06 +00:00
Bas Schoenmaeckers 77c2496f47
Allow creating venv with free-threaded python builds (#7431)
<!--
Thank you for contributing to uv! To help us out with reviewing, please
consider the following:

- Does this pull request include a summary of the change? (See below.)
- Does this pull request include a descriptive title?
- Does this pull request include references to any relevant issues?
-->

## Summary

closes #4828

First iteration for an implementation. I need to add more tests but
wanted your opinion on the implementation first.

<!-- What's the purpose of the change? What does it do, and why? -->

## Test Plan
Currently tested using the following command but will add tests shortly:

```console
D:\repo\uv> cargo run venv -p 3.13t && .venv\Scripts\python.exe
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.52s
     Running `target\debug\uv.exe venv -p 3.13t`
Using Python 3.13.0rc1 interpreter at: C:\Users\bschoen\AppData\Local\Programs\Python\Python313\python3.13t.exe
Creating virtualenv at: .venv
Activate with: .venv\Scripts\activate
Python 3.13.0rc1 experimental free-threading build (tags/v3.13.0rc1:e4a3e78, Jul 31 2024, 21:06:58) [MSC v.1940 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> 
```

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2024-09-23 17:36:16 -05:00
Zanie Blue 47eeef5c09
Explicitly create the DevDrive tmpdir before use (#7644)
A suggested solution to #6940 — unfortunately only time will tell if it
works.
2024-09-23 12:59:22 -05:00
renovate[bot] 734a8cec81
Update astral-sh/setup-uv action to v3 (#7633) 2024-09-22 21:00:49 -04:00
Mathieu Kniewallner 2144c8bd40
chore(renovate): update GitHub Actions major versions in docs (#7584)
## Summary

Originally wanted to update the reference to `astral-sh/setup-uv` in
https://docs.astral.sh/uv/guides/integration/github/, but thought it
could be nice to automate those updates through Renovate. The custom
manager will look for any major version GitHub Action reference in any
Markdown file in `docs` directory, and raise a PR to update it.

Possible improvements:
- We could separate those updates from updating the actions updates for
uv's own GitHub Actions workflow, which would end up raising 2 different
PRs instead of grouping them (example of the current behaviour without
this improvement in
https://github.com/mkniewallner/mkv-playground/pull/4 where we update
the doc reference at the same time as a real dependency usage in a
workflow).
- ~Should the PRs be raised immediately, to handle the update as soon as
possible, instead of waiting for the regular weekly Monday schedule?
This would ensure that `astral-sh/setup-uv` references are handled as
early as possible.~ done in
6af7f45750

## Test Plan

I've tested that with
00ddfb6900/renovate.json5
and
00ddfb6900/docs/integeration/foo.md,
where Renovate raised 2 PRs:
- https://github.com/mkniewallner/mkv-playground/pull/13
- https://github.com/mkniewallner/mkv-playground/pull/4

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2024-09-20 14:58:40 -05:00
samypr100 b918557ae7
ci(docker): improve release tagging order and display on ghcr.io (#7568)
## Summary

Closes https://github.com/astral-sh/uv/issues/7458

This change adds a new job at the end of docker publish which adds
annotations the primary image digests in order to make ghcr.io rank
`ghcr.io/astral-sh/uv` at the top once again. The solution is to
annotate the index at the end during a re-publish to make ghcr.io
consider it a more updated entry than the others and rank it at the top
once again.

## Test Plan

Tested on release run on my own fork
* Packages: https://github.com/samypr100/uv/pkgs/container/uv will show
`ghcr.io/astral-sh/uv` first once again
* Run: https://github.com/samypr100/uv/actions/runs/10951404736
2024-09-20 14:05:51 -05:00
Zanie Blue 398f13824e
Add integration test for `UV_PROJECT_ENVIRONMENT` (#7591)
[Example](https://github.com/astral-sh/uv/actions/runs/10963662204/job/30445673572?pr=7591)

Test for #7585
2024-09-20 14:03:42 -05:00
bluss 7a25a82fc9
Move uvx shell completion to uvx --generate-shell-completion (#7511)
## Summary

Because a problem was found with Powershell and combining the generated
completion scripts for uv and uvx, let's try separating uv and uvx
command completion scripts.

The generated powershell script template can be seen in clap_complete
source, and it starts with `using` directives, which makes it impossible
(apparently) to concatenate two of those script outputs.

As a side effect, this is available under `uv tool run
--generate-shell-completion` too.

Fixes #7482

## Test Plan

- `eval "$(cargo run --bin uvx -- --generate-shell-completion bash)"`
- Test Powershell
2024-09-20 01:27:25 +00:00
Zanie Blue b8f9ee3b4d
Bump version to 0.4.13 (#7558) 2024-09-19 20:43:56 +00:00
konsti 4fdf5fc73f
Use a single lint task in CI (#7540) 2024-09-19 13:32:08 +02:00
Zanie Blue 4611412757
Allow Python pre-releases to be used if they are first on the `PATH` (#7470)
Closes https://github.com/astral-sh/uv/issues/7469
2024-09-18 10:19:10 -05:00
Charlie Marsh c87ce7aaf8
Run `cargo upgrade` (#7448)
Co-authored-by: konstin <konstin@mailbox.org>
2024-09-17 12:39:58 +02:00
Zanie Blue f22e5ef69a
Avoid selecting prerelease Python installations without opt-in (#7300)
Similar to our semantics for packages with pre-release versions.

We will not use prerelease versions unless there are only prerelease
versions available, a specific version is requested,
or the prerelease version is found in a reasonable source (active
environment, explicit path, etc. but not `PATH`).

For example, `uv python install 3.13 && uv run python --version` will no
longer use `3.13.0rc2` unless that is the only Python version available,
`--python 3.13` is used, or that's the Python version that is present in
`.venv`.
2024-09-11 15:49:33 -05:00
Zanie Blue ebd73d83f8
Allow explicitly requesting an system interpreter version in `check_system_python` (#7306)
Needed for #7300
2024-09-11 19:41:42 +00:00
Zanie Blue d7ec546e71
Add Python 3.13 system test for Linux (#7302)
Previously we only had coverage on Windows

e.g. for more test coverage in cases like
https://github.com/astral-sh/uv/pull/7300#discussion_r1755343870

I picked Linux over macOS because the 3.13 prereleases are not available
via HomeBrew?
2024-09-11 14:25:09 -05:00
Tom 7021b15a42
Fix PPC64 page size in binary builds. (#7298)
## Summary

Add maturin build flag to set 64kb page size on PPC64 and PPC64LE
architectures. Not aware of modern systems that use 4kb pages.

Resolves #6528

## Test Plan

ppc64le gnu dynamic-linked and musl static-linked binary builds were
tested successfully on an IBM Power9 system running RHEL 8.8. I do not
have access to other types of PPC64 systems for testing.
2024-09-11 14:13:49 -04:00
Ibraheem Ahmed 4f03d204df
Run benchmarks with `--profile profiling` (#5927)
## Summary

The CodSpeed flamegraphs are currently useless after
https://github.com/astral-sh/uv/pull/5745.
2024-09-10 14:25:53 -04:00
renovate[bot] ee74d74605
Update peter-evans/create-pull-request action to v7 (#7206) 2024-09-08 20:37:18 -04:00
Zanie Blue b36b7badff
Upgrade to the latest cargo-dist version (#7092)
Notably includes support for
[`UV_INSTALL_DIR`](https://github.com/axodotdev/cargo-dist/blob/main/CHANGELOG.md#app-branded-installer-environment-variables)
2024-09-05 13:30:33 -05:00
Charlie Marsh 2da795ae8c
Document official `setup-uv` action (#7056)
## Summary

Closes https://github.com/astral-sh/uv/issues/7047.
2024-09-05 13:59:01 -04:00
Jo d0fa9ccdfa
Use astral-sh/setup-uv action (#7084)
## Summary

Use the now official `astral-sh/setup-uv` action in
`sync-python-release.yml` workflow.
2024-09-05 13:04:46 -04:00
samypr100 595f5909b6
ci(docker)!: adjust entrypoint and cmd for inherited images (#7054)
## Summary

Closes https://github.com/astral-sh/uv/issues/7030

This removes our custom `ENTRYPOINT` just for the additional docker
tags, and makes it empty (to avoid possible upstream surprises if any)
and moves running uv to `CMD` for consistency.

This approach is probably the in-between solution from the discussion in
https://github.com/astral-sh/uv/issues/7030#issuecomment-2329443719 and
would work for everyone's use cases.

## Test Plan

Tested release workflow in
https://github.com/samypr100/uv/actions/runs/10711049920

The default CMD still gives a nice default.

```shell
> docker run ghcr.io/samypr100/uv:0.4.5-alpine
An extremely fast Python package manager.

Usage: uv [OPTIONS] <COMMAND>

Commands:
  run      Run a command or script
  init     Create a new project
  add      Add dependencies to the project
  remove   Remove dependencies from the project
  sync     Update the project's environment
  lock     Update the project's lockfile
  export   Export the project's lockfile to an alternate format
  tree     Display the project's dependency tree
  tool     Run and install commands provided by Python packages
  python   Manage Python versions and installations
  pip      Manage Python packages with a pip-compatible interface
  venv     Create a virtual environment
  build    Build Python packages into source distributions and wheels
  cache    Manage uv's cache
  version  Display uv's version
  help     Display documentation for a command
```
2024-09-04 18:55:21 -05:00
samypr100 37e25e2b1d
feat: introduce more docker tags for uv (#6053)
## Summary

Closes https://github.com/astral-sh/uv/issues/5610

This PR introduces additional images with the uv/uvx binaries from
scratch for both amd64/arm64 and make the mapping easy to configure by
generating the Dockerfile on the fly. This approach focuses on
minimizing CI time by taking advantage of dedicating a worker per
mapping (20-30s~ per job).

This PR also fixes `org.opencontainers.image.version` for all tags
(including the one from `scratch) to contain the right release version
instead of branch name `main` (default when no tag patterns are
specified).

For example, on release `x.y.z`, this will publish the following image
tags with format `ghcr.io/astral-sh/uv:{tag}` with manifests for both
amd64/arm64. This also include `x.y` tags for each respective additional
tag.

* From **scratch**: `latest`, `x.y.z`, `x.y` (currently being published)
* From **alpine:3.20**: `alpine`, `alpine3.20`, `x.y.z-alpine`,
`x.y.z-alpine3.20`
* From **debian:bookworm-slim**: `debian-slim`, `bookworm-slim`,
`x.y.z-debian-slim`, `x.y.z-bookworm-slim`
* From **buildpack-deps:bookworm**: `debian`, `bookworm`,
`x.y.z-debian`, `x.y.z-bookworm`
* From **python:3.12-alpine**: `python3.12-alpine`,
`x.y.z-python3.12-alpine`
* From **python:3.11-alpine**: `python3.11-alpine`,
`x.y.z-python3.11-alpine`
* From **python:3.10-alpine**: `python3.10-alpine`,
`x.y.z-python3.10-alpine`
* From **python:3.9-alpine**: `python3.9-alpine`,
`x.y.z-python3.9-alpine`
* From **python:3.8-alpine**: `python3.8-alpine`,
`x.y.z-python3.8-alpine`
* From **python:3.12-bookworm**: `python3.12-bookworm`,
`x.y.z-python3.12-bookworm`
* From **python:3.11-bookworm**: `python3.11-bookworm`,
`x.y.z-python3.11-bookworm`
* From **python:3.10-bookworm**: `python3.10-bookworm`,
`x.y.z-python3.10-bookworm`
* From **python:3.9-bookworm**: `python3.9-bookworm`,
`x.y.z-python3.9-bookworm`
* From **python:3.8-bookworm**: `python3.8-bookworm`,
`x.y.z-python3.8-bookworm`
* From **python:3.12-slim-bookworm**: `python3.12-slim-bookworm`,
`x.y.z-python3.12-slim-bookworm`
* From **python:3.11-slim-bookworm**: `python3.11-slim-bookworm`,
`x.y.z-python3.11-slim-bookworm`
* From **python:3.10-slim-bookworm**: `python3.10-slim-bookworm`,
`x.y.z-python3.10-slim-bookworm`
* From **python:3.9-slim-bookworm**: `python3.9-slim-bookworm`,
`x.y.z-python3.9-slim-bookworm`
* From **python:3.8-slim-bookworm**: `python3.8-slim-bookworm`,
`x.y.z-python3.8-slim-bookworm`
2024-09-03 08:44:01 -05:00
renovate[bot] ea0a0db7a7
Update fedora Docker tag to v42 (#6924) 2024-09-02 14:01:51 -04:00
Mathieu Kniewallner fe5f085299
chore: run `cargo dev generate-all` on CI and locally (#6899)
## Summary

Noticed that running `cargo dev generate-all` on `main` produced changes
and saw that that the command is not run on the CI nor as a pre-commit
hook.

Not sure if having the command running as a pre-commit hook is something
we want, so I can remove it if you prefer. I find that nice to have as
it's probably easy to forget to run it, especially for new contributors
(and it will only run if there are changes in `uv_cli` or `uv_settings`
crates).

## Test Plan

- Added `cargo dev generate-all --mode check` on the CI, which produced
[this failing
job](https://github.com/astral-sh/uv/actions/runs/10648055597/job/29516699393)
- Ran `cargo dev generate-all` locally and committed the changes, which
produced [this succeeding
job](https://github.com/astral-sh/uv/actions/runs/10648076910/job/29516744942)
2024-08-31 19:03:53 -04:00
Amos Wenger 3e207da3bc
ci(windows): Introduce setup-dev-drive.ps1, maximize dev drive usage (#6858)
As suggested by @samypr100 on #6680:
https://github.com/astral-sh/uv/pull/6680#issuecomment-2313607984

## Summary

Instead of using `UV_INTERNAL__TEST_DIR`, it simply exports `TEMP` when
running Windows jobs.

## Test Plan

I'm going to run this manually under ProcMon on my Windows machine and
see where uv writes temp files, hopefully to the dev drive and not
`%(LOCAL)APPDATA%` or something.

I'm going to commit a dummy code change and look at build time changes
in CI.
2024-08-30 08:54:25 -04:00
Zanie Blue bc52596cd9
Use the larger x64 macOS runner for release builds (#6767)
Closes https://github.com/astral-sh/uv/issues/6766
2024-08-29 15:11:53 -05:00
Zanie Blue c730530b4e
Add timeouts to all of the CI jobs (#6769)
Noticed
https://github.com/astral-sh/uv/actions/runs/10601946253/job/29382920849?pr=6767
hung. This seems like best practice.
2024-08-28 18:57:22 +00:00
Zanie Blue b9d027b67a
Use `uvx` for Python linting in CI (#6771) 2024-08-28 13:54:34 -05:00
samypr100 3eee70dfa1
feat: publish tag without patch version (#6734)
## Summary

Closes https://github.com/astral-sh/uv/issues/6678

This change would publish an additional tag that includes only
`major.minor`.

For a release with x.y.z, this would publish the tags:
* `ghcr.io/astral-sh/uv:latest`
* `ghcr.io/astral-sh/uv:x.y.z`
* `ghcr.io/astral-sh/uv:x.y`
2024-08-28 08:31:53 -05:00
Amos Wenger 2c5cc62106
ci: Make Windows tests ~27% faster by putting temp folder in dev drive (#6680)
## Summary

This PR makes `cargo test | windows` faster in CI.

### Before

![Windows tests take
5m44s](https://github.com/user-attachments/assets/8dd9c619-9b7b-4ebd-a027-56e7967b6d34)

### After

![Windows tests take
5m12s](https://github.com/user-attachments/assets/7702fdba-3034-4db8-b211-85207a1feffa)

## Also

This PR disables the `brotli` feature of `async-compression` since it's
not strictly needed, but this has little to do with the improvements
(it's still less code to build).

This PR introduces additional code in uv tool uninstall to ignore errors
(that only seem to happen on ReFS, ie. on Dev Drives) akin to "the thing
we're trying to delete cannot be deleted because it's already being
deleted".

If `raw_os_error` was stable we could do u32 matching instead of that
`.to_string().contains()` abomination.
2024-08-27 15:25:05 -05:00
Zanie Blue 6d38d42b41
Always run both public and private documentation checks (#6707)
Avoiding failures like https://github.com/astral-sh/uv/pull/6705

Context in https://github.com/astral-sh/uv/pull/6099

## Test plan

Even though I opened the pull request, the public build was still
tested.
2024-08-27 17:35:43 +00:00
renovate[bot] b68406bb56
Update tj-actions/changed-files action to v45 (#6632) 2024-08-25 22:12:03 -04:00
samypr100 a959772074
feat: use multi-runner on docker publish (#6556)
## Summary

This PR parallelizes multi-platform builds using multiple workers (hence
the new docker-build / docker-publish jobs), this seems to save about ~8
minutes.

This is partial work extracted from
https://github.com/astral-sh/uv/pull/6053 than is standalone
2024-08-23 18:50:46 -05:00
Zanie Blue f9348a6ea3
Run tests when `docs/reference` generated files change (#6551)
Short-term fix for https://github.com/astral-sh/uv/issues/6352
2024-08-23 17:35:53 -05:00
Andrew Gallant b9ff03d73c ci: increase dev drive size
For working around linked errors:
https://github.com/astral-sh/uv/actions/runs/10371457087/job/28711821180?pr=5887
2024-08-13 08:35:46 -07:00
Zanie Blue e097f948c9
Bump version to 0.2.35 (#5984) 2024-08-09 19:21:06 -05:00
Ibraheem Ahmed ddb82a01c8
Add basic universal benchmarks to CI (#5938)
## Summary

Resolves https://github.com/astral-sh/uv/issues/4921.
2024-08-09 12:52:28 -04:00
Zanie Blue e9dd4876b8
Skip git tests on Windows (#5891)
Might be pushing it on test coverage, but these are some of our slowest
tests we might get a significant speedup here.

Part of #5713
2024-08-08 10:37:24 -05:00
Zanie Blue 7523673f39
Setup Rust after restoring the cache (#5892)
This saves about 10-20s

Part of #5713
2024-08-07 16:33:12 -05:00
Zanie Blue 858d75d0af
Use a larger runner for Linux test jobs (#5883)
From 8 to 16 cores, 32 to 64 GB RAM for a 2x per minute cost increase.

As in:

- #5874 
- #5873
2024-08-07 18:39:31 +00:00
Zanie Blue c77f213acd
Use a larger runner for macOS test jobs (#5874)
From 3 to 6 (+8 GPU) cores, 7 to 14 GB ram.

Related:
- https://github.com/astral-sh/uv/pull/5873
2024-08-07 12:32:08 -05:00
Zanie Blue 8dad1ac2d4
Use a larger runner for Windows test jobs (#5873)
From 8 to 16 cores, 32 to 64 GB ram. Testing on Windows first because
it's the bottleneck.

Previously tested in #2515 to no effect, maybe better now that we have a
development drive?
2024-08-07 12:31:59 -05:00
samypr100 2cd63f06dc
feat: more rust in trampoline (#5750)
## Summary

This is an experimental PR to replace more unsafe calls with more rust
while still trying to keep the binary size small enough. These changes
roughly increase the size of the trampolines to about 40kb~. This is a
alternate PR to https://github.com/astral-sh/uv/pull/5751.

The primary changes here include
* Switch to use rust path components for ease of path management
* Leverage `std::process::exit` for process exit and cleanup
* Use `std::io::Error::last_os_error` for IO Errors to remove
`FormatMessage` complexity
* Use `std::env::current_exe` to get the current executable instead of
`GetModuleFileNameA`

## Test Plan

Added one more existing test case to trampoline tests.
Still need to verify dunce::canonicalize is desired or not on
find_python_exe.

---------

Co-authored-by: konstin <konstin@mailbox.org>
2024-08-07 08:19:38 +00:00
konsti db371560bc
Use prettier to format the documentation (#5708)
To enforce the 100 character line limit in markdown files introduced in
https://github.com/astral-sh/uv/pull/5635, and to automate the
formatting of markdown files, i've added prettier and formatted our
markdown files with it.

I've excluded the changelog and the generated references documentation
from this for having too many changes, but we can also include them.

I'm not particular on which style we use. My main motivations are
(major) not having to reflow markdown files myself anymore and (minor)
consistence between all markdown files. I've chosen prettier for similar
reason as we chose black, it's a single good style that's automated and
shared in the community. I do prefer prettier's style of not breaking
inside of a link name though.

This PR is in two parts, the first adds prettier to CI and documents
using it, while the second actually formats the docs. When merge
conflicts arise, we can drop the last commit and regenerate it with `npx
prettier --prose-wrap always --write BENCHMARKS.md CONTRIBUTING.md
README.md STYLE.md docs/*.md docs/concepts/**/*.md docs/guides/**/*.md
docs/pip/**/*.md`.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2024-08-02 08:58:31 -05:00
Zanie Blue c558d70690
Install Python versions with previous uv release (#5717)
Part of https://github.com/astral-sh/uv/issues/5713

Shaves 50s or ~25% off the Ubuntu test run. Maybe 30s or 8% off macOS.
Windows already uses the GitHub distributions.

Note this is some of our only test coverage for Python version installs,
we may want to add separate coverage to compensate.
2024-08-01 18:59:28 -05:00
Charlie Marsh 5d727cb0af
Deprecate the `--isolated` flag (#5466)
## Summary

This PR deprecates the `--isolated` flag. The treatment varies across
the APIs:

- For non-preview APIs, we warn but treat it as equivalent to
`--no-config`.
- For preview APIs, we warn and ignore it, with two exceptions...
- For `tool run` and `run` specifically, we don't even warn, because we
can't differentiate the command-specific `--isolated` from the global
`--isolated`.
2024-07-30 22:40:38 +00:00
Charlie Marsh e6ad0cd2f9
Remove PyO3 updates from renovate (#5559) 2024-07-29 14:38:12 +00:00
renovate[bot] 8f378ec2c9
Update CodSpeedHQ/action action to v3 (#5549)
=
2024-07-29 10:03:04 -04:00
renovate[bot] 5365794023
Update hynek/setup-cached-uv action to v2 (#5550) 2024-07-29 09:44:03 -04:00
konsti 2452314f20
Add exclude-newer to benches case priming (#5554)
Uses the same cutoff that the benchmark itself uses
2024-07-29 13:48:38 +02:00
konsti 78be9a6a6b
Add trampoline tests to CI (#5331)
Add the tests added in #5204 to CI. The crate is not part of the
workspace (it requires nightly) and is windows only, so we have to test
it separately.

---------

Co-authored-by: samypr100 <3933065+samypr100@users.noreply.github.com>
2024-07-29 11:43:50 +02:00
Jo 62e72f51ff
Remove an extra quote in `sync-python-releaes.yml` (#5393) 2024-07-24 02:53:00 +00:00
Jo 17d63b0e07
Update `python-build-standalone` workflow (#5390)
## Summary

After #5337, `fetch-download-metadata.py` fetches not just from
`python-build-standalone`, so updates the workflow to
`sync-python-releases.yml`.

Also includes `crates/uv-python/download-metadata.json` in `add-paths`.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2024-07-24 02:11:52 +00:00
Zanie Blue aced05d427
Use the docs bot email for docs publish commits (#5369) 2024-07-23 16:04:12 -05:00
Jo 7ddf67a72b
Add PyPy finder (#5337)
## Summary

This PR adds PyPy finder and adds PyPy to uv managed Python versions.

## Test Plan

```console
$ cargo run -- python install
```
2024-07-23 14:58:04 -05:00
Jo 43084249ee
Add mypy type check for uv-python scripts (#5332)
## Summary

Per https://github.com/astral-sh/uv/pull/4853#issuecomment-2212505407

> If we're going to aim for full type coverage, we should probably
follow this by adding type checking in CI too otherwise it seems too
easy for it to become out of date.
2024-07-23 09:14:05 -05:00
Jo 025f2f3162
Fix `python-build-standalone` workflow (#5327)
## Summary

The script reads `GITHUB_TOKEN` instead. And since #4853 merged, there
is no need to use `uv run --with`.
2024-07-23 08:20:36 -04:00
Charlie Marsh dc108e373a
Add an automated job to sync `python-build-standalone` releases (#5261)
## Summary

Perhaps in the future we can trigger this directly on release in
`python-build-standalone`, but for now it's a cron job.
2024-07-22 14:55:47 -04:00
Zanie Blue 6492f1a897
A bundle of documentation changes (#5239)
I just need to iterate on everything and we're not doing a lot of
reviews anyway.

Closes #5234 
Closes #5191
2024-07-22 17:15:11 +00:00
Tim Felgentreff 24a0268675
Add GraalPy support (#5141)
<!--
Thank you for contributing to uv! To help us out with reviewing, please
consider the following:

- Does this pull request include a summary of the change? (See below.)
- Does this pull request include a descriptive title?
- Does this pull request include references to any relevant issues?
-->

## Summary

Currently, `uv` refuses to install anything on GraalPy. This is
currently blocking GraalPy testing with cibuildwheel, since manylinux
includes both `uv` and `graalpy` (but doesn't test with `uv`), whereas
cibuildwheel defaults to `uv`. See e.g.
https://github.com/pypa/cibuildwheel/actions/runs/9956369360/job/27506182952?pr=1538
where it gives
```
      + python -m build /project/sample_proj --wheel --outdir=/tmp/cibuildwheel/built_wheel --installer=uv
  * Creating isolated environment: venv+uv...
  * Using external uv from /usr/local/bin/uv
  * Installing packages in isolated environment:
    - setuptools >= 40.8.0
  > /usr/local/bin/uv pip install "setuptools >= 40.8.0"
  < error: Unknown implementation: `graalpy`
```

## Test Plan

I simply based the GraalPy support on PyPy and added some small tests.
I'm open to discussing how to test this. GraalPy is available for
manylinux images and with setup-python, so we should be able to add
tests against it to the CI. I locally confirmed by installing `uv` into
a GraalPy venv and then trying things like `uv pip install Pillow` and
testing those extensions.
2024-07-18 19:28:28 -05:00
Charlie Marsh f74235bb56
Validate docs in CI (#5158)
## Summary

Closes https://github.com/astral-sh/uv/issues/5155.
2024-07-17 14:14:04 -04:00
Charlie Marsh c9e66bf8c8
Add `publish-docs` to release workflow (#5153)
## Summary

Forgot to add this here. Just kicked it off manually for the last
release.
2024-07-17 17:49:09 +00:00