Commit Graph

373 Commits

Author SHA1 Message Date
konsti 585dac12a9 Update packse and remove Python 3.9.20 from test requirements (#17881)
Requires the packse PR to land first.
2026-02-18 19:35:30 +01:00
konsti 244e242471 Check that uv wheels contain the expected files (#18067)
This ensures for example that the license files don't get silently
dropped. The idea is that the script has a "snapshot" of the wheel
contents, and that snapshot is updated when adding or removing files.

With these changes, we can safely remove the extraneous annotations from
#18055.

Closes #18055
2026-02-18 17:46:27 +01:00
Jonathan J. Helmus 6663f8899d Add CPython 3.15.0a6 (#17987)
Update available python versions to include CPython 3.15.0a6
Update scripts used to sync pbs releases to account for recent changes
in the repo and to support running on macOS.
2026-02-12 11:23:41 -06:00
Zanie Blue c8a1518ecf Split the TestContext into a dedicated uv-test crate (#17551) 2026-02-07 08:02:58 -06:00
Zanie Blue 0ba432459a Bump version to 0.10.0 (#17882)
Co-authored-by: Brent Westbrook <36778786+ntBre@users.noreply.github.com>
2026-02-05 20:28:44 +00:00
Zanie Blue f3d50129c6 Update uv test features to use test- as a prefix (#17860)
I'll roll this into 0.10 even though it isn't breaking for "users".

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-05 11:52:18 -06:00
Zanie Blue 27424e4f08 Emit the plan target during publish test failures (#17740)
I'm always staring at these wondering which job actually failed
2026-01-29 14:51:39 -06:00
William Woodruff ba1306430e Support Trusted Publishing with pyx (#17438) 2026-01-20 22:18:26 +00:00
Tomasz Kramkowski 6dd2c0ca4b Fix scripts/check_system_python.py (#17629)
## Summary

Fix a bug in #17533 which was auto-merged despite failures.

## Test Plan

N/A (CI PR).
2026-01-20 16:23:58 +00:00
Tomasz Kramkowski cfd048aa7a Change chocolatey system test to ensure uv uses the right python (#17533)
Fix #17524.

This adds a couple of new options to `scripts/check_system_python.py` to verify that it is running with the right interpreter version and that it would hopefully be the interpreter picked up by uv (although that isn't strictly necessary as other tests should fail in that case).

Additionally, since the path to the newly installed chocolatey python is not loaded from registry on every step, we now manually load it.

Beware, this will break `GITHUB_PATH` but this job wasn't using it at the moment.
2026-01-20 16:02:14 +00:00
Zanie Blue 6caa08adba Add a nextest setup hook and optional code signing for tests on macOS (#17542)
Uses a nextest setup hook to sign the uv and test binaries before
running the tests. This allows you to grant permission to the test suite
_once_ when running native authentication tests on macOS. Otherwise, you
get prompted on every access on every binary change.
2026-01-20 08:43:40 -06:00
Zanie Blue 3456ae45f2 Add check for uv-trampoline windows crate version consistency (#17552)
Ensures consistency following https://github.com/astral-sh/uv/pull/17541
2026-01-19 09:24:01 -06:00
William Woodruff b3b15560c3 Test uv+PyPI Trusted Publishing on Gitlab (#17443) 2026-01-15 10:43:56 -05:00
Zanie Blue 3c72e56d92 Use constants for latest Python versions in tests (#17444)
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-13 21:36:45 +00:00
Zsolt Dollenstein fa218b7034 Re-enable pyx integration tests (#17414) 2026-01-12 09:35:43 -05:00
Zanie Blue c10c84a588 Disable pyx staging publish tests temporarily (#17397)
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-09 22:19:45 +00:00
Zanie Blue b5660cec26 Silence prettier logs during crate readme generation (#17271)
These were interleaved in stderr and are just noise.
2025-12-30 09:46:59 -06:00
Zanie Blue e006a69fe8 Configure prettier prose-wrap in .prettierrc instead of the CLI (#17184)
This also removes the file-specific targets from prettier execution
which means we're including `.json`, `.css`, and `.html` files, which
seems like an improvement.

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-18 18:54:23 -06:00
Zanie Blue a70ee58ae1 Move test support files out of scripts/ into test/
(#17032)

It's been bothering me that we have a bunch of stub packages and such in
a `scripts` directory.
2025-12-09 10:06:05 -06:00
Zanie Blue 5a6f2ea319 Generate reference documentation at publish-time and the JSON schema at release-time (#16969)
It'd be nice to avoid churn for contributors. This is a pretty frequent
cause of CI failures and I don't think we really need to have the
reference documentation committed.
2025-12-08 12:31:38 +00:00
Zanie Blue f6ad3dcd57 Regenerate the crates.io readmes on release (#16992)
Otherwise, they're stale!
2025-12-04 19:19:36 -06:00
samypr100 d3cd94ecaf Adjust release script to handle uv-trampoline lockfile changes (#16971)
## Summary

Given `bump-workspace-crate-versions.py` will bump all crates, we also
need to update uv-trampoline lockfile references to those new versions
(for uv-static, uv-macros) after
https://github.com/astral-sh/uv/pull/16950.

## Test Plan

Ran release script manually and verify uv-trampoline lockfile is up to
date after the changes from bump-workspace-crate-versions.py
2025-12-04 11:45:18 -06:00
Zanie Blue 99c40f74c5 Link to the uv version in crates.io member READMEs (#16939)
Closes https://github.com/astral-sh/uv/issues/16931
2025-12-02 20:02:22 +00:00
William Woodruff 3347e196bb Use npm ci --ignore-scripts in update_schemastore.py (#16915) 2025-12-01 23:36:55 +00:00
konsti c67a0fdd7b Support only rendering a specific packse template (#16874)
Support only updating a specific one of the three packse template, to
avoid re-build all three tests each time.
2025-11-28 10:15:37 +01:00
konsti f02b459d04 Support required environments in packse (#16873)
Companion change for https://github.com/astral-sh/packse/pull/293,
motivated by
https://github.com/astral-sh/uv/pull/16824#discussion_r2556176057
2025-11-27 15:17:16 +01:00
William Woodruff eaa4651df0 Use Bearer authentication for pyx publish test (#16864) 2025-11-26 17:05:48 +00:00
Zanie Blue 17c1061676 Fix the links to uv in crates.io member READMEs (#16848) 2025-11-25 18:47:32 +00:00
Zanie Blue d735e27750 Drop unpublished crates from the uv crates.io README (#16847) 2025-11-25 18:46:02 +00:00
William Woodruff 7b3199f07c Collect and upload PEP 740 attestations during uv publish (#16731)
Co-authored-by: konsti <konstin@mailbox.org>
2025-11-24 16:47:15 -05:00
Zanie Blue 7b8240dca9 Generate a README for crate members too (#16812)
We skip members with existing READMEs for now.

Follows #16809 and #16811
2025-11-21 15:44:05 -06:00
Zanie Blue ba46a448d4 Enumerate workspace members in the uv crate README (#16811) 2025-11-21 13:44:59 -06:00
Zanie Blue a8bf05d83b Add manual release script (#16799)
Unfortunately I need this sometimes
2025-11-21 10:45:08 -06:00
Zanie Blue 4be1e0a83c Bump version to 0.9.11 (#16794) 2025-11-20 16:24:01 -06:00
Zanie Blue dfe89047bb Publish to crates.io (#16770) 2025-11-20 21:26:44 +00:00
William Woodruff f78ddf05c4 Add an integration test for publishing to pyx (#16740) 2025-11-18 12:13:57 -05:00
Zanie Blue 2652244655 Bump version to 0.9.6 (#16500)
Signed-off-by: William Woodruff <william@astral.sh>
Co-authored-by: William Woodruff <william@astral.sh>
2025-10-29 14:08:49 -05:00
David Peter b50c1be100 Only add actual schema in schemastore PRs (#16346)
## Summary

Last time I ran the `update_schemastore.py` script in ty, due to what I
assume was a `npm` version mismatch, the `package-lock.json` file was
updated while running `npm install` in the `schemastore`. Due to the use
of `git commit -a`, it was accidentally included in the commit for the
semi-automated schemastore PR. The solution here is to only add the
actual file that we want to commit.

Same as https://github.com/astral-sh/ty/pull/1391

## Test Plan

I did a dry-run of this script (by commenting out the final `push`) and
verified that the commit did include the schema, but not the updated
`package-lock.json` file.
2025-10-17 19:35:53 +00:00
Zanie Blue 39b6886536 Bump version to 0.9.0 (#16161)
Co-authored-by: konsti <konstin@mailbox.org>
2025-10-07 23:17:42 +00:00
Charlie Marsh 170ab1cd7f Ignore origin when comparing installed tools (#16055)
## Summary

This field gets dropped when you serialize and deserialize, so we should
ignore it when comparing indexes.

Closes https://github.com/astral-sh/uv/issues/16051.
2025-09-29 17:23:18 +00:00
Zanie Blue 15975b00ea Upgrade rooster to v0.1.0 (#16025) 2025-09-25 09:11:04 -05:00
konsti 663053b0d1 packse: Use our own rendering exclusively, and use pylock.toml (#15796)
This PR contains two changes: The companion PR to
https://github.com/astral-sh/packse/pull/277, which moderately
simplifies the uv side, and switching to pylock.toml for packse as
dogfooding. These changes can be applied independent from each other.

Since all files, including the vendored build dependencies, are now on
GitHub Pages under the same root, we only need a packse index root URL.
2025-09-16 15:25:11 +02:00
konsti 2ec71bd608 Update packse to 0.3.52: Fix requires python 3.12 (#15786)
Pull in the latest packse changes to make all test work with the new
default Python requirement, 3.12.
2025-09-11 13:19:34 +00:00
Zanie Blue ab2880f389 Upgrade to the latest rooster version (#15749)
For all my latest bells and whistles...

It's not published yet since it has breaking changes, so we're using the
commit. (This is what ty does)
2025-09-10 14:34:43 -05:00
Zanie Blue 32bcfdff0a Add case for uv auth login in registry integration tests (#15593)
Adds an alternative third-party registry test mode that uses `uv auth
login` instead of the environment variables to provide configuration.
2025-09-02 13:16:52 -05:00
Zanie Blue 53599d9f56 Add test case for uv auth login in publish integration tests (#15592) 2025-09-02 13:16:52 -05:00
Zanie Blue a60312a9b8 Improve publish test error when no versions are found (#15594) 2025-08-30 10:35:54 -05:00
Chris Hughes 9346b4d0f6 fix: Handle dotted package names in script path resolution (#15300)
<!--
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

Fix WindowsRunnable::from_script_path to correctly append extensions
instead of replacing them when resolving executable paths. This resolves
https://github.com/astral-sh/uv/issues/15165#issue-3304086689.

- Add add_extension_to_path helper that appends extensions properly
- Update extension resolution to use the new helper
- Add tests

## Test Plan

Added unit tests for the new and existing functionality that the change
touches. Tested manually locally on Windows.
<!-- How was it tested? -->

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
2025-08-15 16:44:59 -05:00
Zanie Blue 278295ef02 Add test cases for find_uv_bin (#15110)
Adds test cases to unblock

- https://github.com/astral-sh/uv/pull/14181
- https://github.com/astral-sh/uv/pull/14182
- https://github.com/astral-sh/uv/pull/14184
- https://github.com/astral-sh/uv/pull/14184
- https://github.com/tox-dev/pre-commit-uv/issues/70

We use a package with a symlink to the Python module to get a mock
installation of uv without building (or packaging) the uv binary. This
lets us test real patterns like `uv pip install --prefix` without
encoding logic about where things are placed during those installs.

---------

Co-authored-by: konstin <konstin@mailbox.org>
2025-08-07 07:14:01 -05:00
Charlie Marsh fa24d9a5e2 Include wheel hashes from local Simple indexes (#14993)
## Summary

This just looks like an oversight. We weren't including hashes from
local Simple API indexes if a package had both a wheel and a source
distribution.

Closes https://github.com/astral-sh/uv/issues/14883
2025-07-31 14:20:49 +00:00