KEMBAR78
Comparing 0.8.24...0.9.0 · astral-sh/uv · GitHub
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: astral-sh/uv
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 0.8.24
Choose a base ref
...
head repository: astral-sh/uv
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 0.9.0
Choose a head ref
  • 12 commits
  • 36 files changed
  • 8 contributors

Commits on Oct 7, 2025

  1. Don't warn when dependency is constraint by other dependency (#16149)

    Currently, `uv lock --resolution lowest-direct` warns above the setup
    below, as we visit the unbounded `anyio[trio]` first.
    
    ```toml
    [project]
    name = "project"
    version = "0.1.0"
    requires-python = ">=3.12"
    dependencies = [
        "anyio[trio]",
        "anyio>=4"
    ]
    ```
    konstin authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    73e62c0 View commit details
    Browse the repository at this point in the history
  2. Surface pinned-version hint when uv tool upgrade can’t move the tool (

    #16081)
    
    Resolves #15665
    
    `uv tool upgrade` already respects version pins, but when a tool was
    installed with an exact version the command quietly becomes a no-op even
    though users expect it to upgrade the executable. This change tweaks the
    upgrade flow to detect that situation by inspecting the stored receipt
    and, whenever the tool stays pinned, emit a concise hint explaining why
    the version didn’t move and how to reinstall without the pin.
    
    The message still appears if the run only refreshed supporting packages,
    so users aren’t misled by dependency churn that leaves the tool itself
    untouched.
    
    I also added an integration test for the scenario end to end by
    installing `babel==2.6.0`, attempting an upgrade, and asserting that the
    hint is shown alongside the dependency updates.
    terror authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    7d63ef1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    83f7380 View commit details
    Browse the repository at this point in the history
  4. Update uv pip compile args in layout.md (#16155)

    <!--
    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
    
    Corrects example command for generating pylock.toml from requirements.in
    
    ## Test Plan
    
    Local preview
    Chance-Henney authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    111ed6f View commit details
    Browse the repository at this point in the history
  5. fix compile error on missing uv-python metadata (#16154)

    The `uv-python` crate reads the checked-in download metadata to write
    out a minified version to be statically included into the binary.
    
    Sometimes, the resulting `download-metadata-minified.json` can go
    missing, such as when `uv` is installed via `cargo` as a git source, and
    there is an update; `cargo` will do a hard reset on the git repo it
    stores in the cache, causing it to be deleted. In these instances, the
    `uv-python` crate does not currently re-run its build script, because as
    it happens, there was no change to the `download-metadata.json` since it
    was last compiled. This causes a build error like:
    
    ```
                Updating git repository `https://github.com/astral-sh/uv`
              Installing uv v0.8.24 (https://github.com/astral-sh/uv?tag=0.8.24#252f8873)
                Updating crates.io index
               Compiling uv-version v0.8.24 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-version)
               Compiling uv-git v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-git)
               Compiling uv-build-backend v0.1.0 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-build-backend)
               Compiling uv-configuration v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-configuration)
               Compiling uv-client v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-client)
               Compiling uv-extract v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-extract)
               Compiling uv-workspace v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-workspace)
               Compiling uv-python v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-python)
               Compiling uv-requirements-txt v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-requirements-txt)
               Compiling uv-bin-install v0.0.1 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-bin-install)
               Compiling uv-publish v0.1.0 (/home/skhawtho/.cargo/git/checkouts/uv-c9e40703e19509a8/252f887/crates/uv-publish)
            error: couldn't read `crates/uv-python/src/download-metadata-minified.json`: No such file or directory (os error 2)
               --> crates/uv-python/src/downloads.rs:795:45
                |
            795 | const BUILTIN_PYTHON_DOWNLOADS_JSON: &str = include_str!("download-metadata-minified.json");
                |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    
            error: could not compile `uv-python` (lib) due to 1 previous error
            error: failed to compile `uv v0.8.24 (https://github.com/astral-sh/uv?tag=0.8.24#252f8873)`, intermediate artifacts can be found at `/home/skhawtho/.cache/cargo`.
            To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.
    ```
    
    This fixes the issue by also adding a `rerun-if-changed` on the
    resulting minified JSON file.
    
    Separately, this revision also changes the output directory of the
    minified file to the build script's output directory via the `OUT_DIR`
    environment variable, so as not to pollute the source code.
    dead10ck authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    9214855 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    61b8eae View commit details
    Browse the repository at this point in the history
  7. Sync latest Python releases (#16157)

    Pick up python-build-standalone tag 20251007 to add 3.14.0 final
    and 3.13.8, and adjust tests.
    
    Also, fix matching version requests with prereleases: `uvx
    python@3.14.0rc3` should not be satisfied by 3.14.0 final.
    
    Co-authored-by: Geoffrey Thomas <geofft@ldpreload.com>
    github-actions[bot] and geofft authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    37b3557 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    3a507e6 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    df0a12d View commit details
    Browse the repository at this point in the history
  10. Promote trixie and alpine 3.22 as default tags (#15352)

    ## Summary
    
    Semi related to #15270, except
    there's no removal.
    
    Makes Alpine 3.22 and debian trixie the default tags instead of removing
    bookworm and alpine 3.21 to minimize churn.
    
    ~~This PR is pending #15351 merged
    first.~~ Merged
    
    ## Test Plan
    
    No functional changes made besides changing tag pointers.
    samypr100 authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    2f7bb7e View commit details
    Browse the repository at this point in the history
  11. Publish Python 3.14 Docker Images (#16150)

    ## Summary
    
    Tentative PR to drop the `-rc` suffix from the published images.
    
    Do not merge this yet until the formal release
    [upstream](https://hub.docker.com/_/python) :)
    samypr100 authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    5936780 View commit details
    Browse the repository at this point in the history
  12. Bump version to 0.9.0 (#16161)

    Co-authored-by: konsti <konstin@mailbox.org>
    zanieb and konstin authored Oct 7, 2025
    Configuration menu
    Copy the full SHA
    39b6886 View commit details
    Browse the repository at this point in the history
Loading