Skip to content

Releases: astral-sh/uv

0.4.2

01 Sep 17:56
736ccb9
Compare
Choose a tag to compare

Release Notes

Enhancements

  • Adding support for .pyc files in uv run (#6886)
  • Treat missing top_level.txt as non-fatal (#6881)

Bug fixes

  • Fix is_disjoint check for supported environments (#6902)
  • Remove dangling archives in uv cache clean ${package} (#6915)
  • Error when discovered Python is incompatible with --isolated workspace (#6885)
  • Warn when discovered Python is incompatible with PEP 723 script (#6884)

Install uv 0.4.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.4.2/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.4.2/uv-installer.ps1 | iex"

Download uv 0.4.2

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.4.1

30 Aug 14:43
823f23e
Compare
Choose a tag to compare

Release Notes

Enhancements

  • Add uv export --format requirements-txt (#6778)
  • Allow @ references in uv tool install --from (#6842)
  • Normalize version specifiers by sorting (#6333)
  • Respect the user's upper-bound in requires-python (#6824)
  • Use Windows registry to discover Python on Windows directly (#6761)
  • Hint at --no-workspace in uv init failures (#6815)
  • Update to last PyPy releases (#6784)

Bug fixes

  • Avoid deadlocks when multiple uv processes lock resources (#6790)
  • Expand tildes when matching against PATH (#6829)
  • Fix uv init --no-project alias (#6837)
  • Ignore pre-release segments when discovering via requires-python (#6813)
  • Support inline optional tables in uv add and uv remove (#6787)
  • Update default hello.py to pass ruff format (#6811)
  • Avoid stripping root for user path display (#6865)
  • Error when user-provided environments are disjoint with Python (#6841)
  • Retain alphabetical sorting for pyproject.toml in uv add operations (#6388)))

Documentation

  • Add a link to the multiple index docs in the alternative index guide (#6826)
  • Add docs for inline exclude newer in PEP 723 scripts (#6831)
  • Enumerate available Docker tags (#6768)
  • Omit [pip] section from configuration file docs (#6814)
  • Update project.urls in pyproject.toml (#6844)
  • Add docs for AWS CodeArtifact usage (#6816)

Other changes

Install uv 0.4.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.4.1/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.4.1/uv-installer.ps1 | iex"

Download uv 0.4.1

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.4.0

28 Aug 18:01
d9bd3bc
Compare
Choose a tag to compare

Release Notes

This release adds first-class support for Python projects that are not designed as Python packages (e.g., web applications, data science projects, etc.).

In doing so, it includes some breaking changes around uv's handling of projects. Previously, uv required that all projects could be built into distributable Python packages, and installed them into the virtual environment. Projects created by uv init always included a [build-system] definition and existing projects that did not define a [build-system] would use the legacy setuptools build backend by default.

Most users are not developing libraries that need to be packaged and published to PyPI. Instead, they're building applications using web frameworks, or running collections of Python scripts in the project's root directory. In these cases, requiring a [build-system] was confusing and error-prone. In this release, uv changes the default behavior to orient around these common use cases.

In summary, the major changes are:

  • uv no longer attempts to package and install projects that do not define a [build-system].
    • While the project itself will not be installed into the virtual environment, its dependencies will still be included.
    • The previous behavior can be recovered by setting package = true in the [tool.uv] section of your pyproject.toml.
  • uv init no longer creates a src/ directory or defines a [build-system] by default.
    • The previous behavior can be recovered with uv init --lib or uv init --app --package.
  • uv allows and recommends including [project] definitions in virtual workspace roots.
    • Previously, the uv required the [project] section to be omitted.
  • uv allows disabling packaging of projects, even if they define a [build-system], by setting package = false in the [tool.uv] section of your pyproject.toml.

See the latest documentation on build systems in projects for more details.

Enhancements

  • Add first-class support for non-packaged projects (#6585)
  • Add --app and --lib options to uv init (#6689)
  • Use virtual source label in lockfile for non-packaged dependencies (#6728)
  • Read hash from URL fragment if --hashes are omitted (#6731)
  • Support {package}@{version} in uv tool install (#6762)
  • Publish additional Docker tags without patch version (#6734)

Bug fixes

  • Accept either strings or structs for hosts (#6763)
  • Avoid including non-excluded members in parent workspaces (#6735)
  • Avoid reading stale .egg-info from mutable sources (#6714)
  • Avoid writing invalid PEP 723 scripts on tool.uv.sources (#6706)
  • Compare virtual members when invalidating lockfile (#6754)
  • Do not require workspace members to sync with --frozen (#6737)
  • Implement deserialization for trusted host (#6716)
  • Avoid showing duplicate paths in uv python list (#6740)
  • Raise an error for unclosed script tags in PEP 723 scripts (#6704)

Documentation

  • Add dependabot and renovate documentation page (#6236)
  • Bind to the host to allow connections in FastAPI Docker example (#6753)
  • Fix some broken links (#6705)
  • Update FastAPI guide for virtual projects and use uv init to create the pyproject.toml (#6752)
  • Update project documentation for the application / library concepts (#6718)
  • Update workspace documentation to remove legacy virtual projects (#6720)

Install uv 0.4.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.4.0/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.4.0/uv-installer.ps1 | iex"

Download uv 0.4.0

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.3.5

27 Aug 17:11
6c62d9f
Compare
Choose a tag to compare

Release Notes

Enhancements

  • Add support for --allow-insecure-host (aliased to --trusted-host) (#6591)
  • Read requirements from requires.txt when available (#6655)
  • Respect tool.uv.environments in pip compile --universal (#6663)
  • Use relative paths by default in uv add (#6686)
  • Improve messages for empty solves and installs (#6588)

Bug fixes

  • Avoid reusing state across tool upgrades (#6660)
  • Detect musl and error for musl Python builds (#6643)
  • Ignore send errors in installer (#6667)

Documentation

  • Add development section to Docker guide and reference new example project (#6666)
  • Add docs for constraint-dependencies and override-dependencies (#6596)
  • Clarify package priority order in pip compatibility guide (#6619)
  • Fix docs for disabling build isolation with uv sync (#6674)
  • Improve consistency of directory lookup instructions in Docker (#6665)
  • Improve lockfile concept documentation, add coverage for upgrades (#6698)
  • Shift the order of some of the Docker guide content (#6664)
  • Use python to highlight requirements and use more content tabs (#6549)

Install uv 0.3.5

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.3.5/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.3.5/uv-installer.ps1 | iex"

Download uv 0.3.5

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.3.4

26 Aug 21:09
39f3cd2
Compare
Choose a tag to compare

Release Notes

CLI

  • Show --editable on the uv add CLI (#6608)
  • Add --refresh to tool run warning for --with dependencies (#6609)

Bug fixes

  • Allow per dependency build isolation for setup.py-based projects (#6517)
  • Avoid un-strict syncing by-default for build isolation (#6606)
  • Respect --no-build-isolation-package in uv sync (#6605)
  • Respect extras and markers on virtual dev dependencies (#6620)
  • Support PEP 723 scripts in GUI files (#6611)
  • Update lockfile after setting minimum bounds in uv add (#6618)
  • Use relative paths for --find-links and local registries (#6566)
  • Use separate types to represent raw vs. resolver markers (#6646)
  • Parse wheels WHEEL and METADATA files as email messages (#6616)
  • Support unquoted hrefs in --find-links and other HTML sources (#6622)
  • Don't canonicalize paths to user requirements (#6560)

Documentation

  • Add FastAPI guide to overview (#6603)
  • Add docs for disabling build isolation with uv sync (#6607)
  • Add example of reading script from stdin using echo (#6567)
  • Add tip to use intermediate layers in Docker builds (#6650)
  • Clarify need to include pyproject.toml with --no-install-project (#6581)
  • Move WORKDIR directive in Docker examples (#6652)
  • Remove duplicate WORKDIR directive in Docker example (#6651)

Install uv 0.3.4

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.3.4/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.3.4/uv-installer.ps1 | iex"

Download uv 0.3.4

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.3.3

23 Aug 23:59
deea602
Compare
Choose a tag to compare

Release Notes

Enhancements

  • Add uv sync --no-install-project to skip installation of the project (#6538)
  • Add uv sync --no-install-workspace to skip installation of all workspace members (#6539)
  • Add uv sync --no-install-package to skip installation of specific packages (#6540)
  • Show previous version in self update message (#6473)

CLI

  • Add --no-project alias for uv python pin --no-workspace (#6514)
  • Ignore .python-version files in uv venv with --no-config (#6513)
  • Include virtual environment interpreters in uv python find (#6521)
  • Respect - as stdin channel for uv run (#6481)
  • Revert changes to pyproject.toml when sync fails duing uv add (#6526)

Configuration

  • Add UV_COMPILE_BYTECODE environment variable (#6530)

Bug fixes

  • Set VIRTUAL_ENV for uv run invocations (#6543)
  • Ignore errors in workspace discovery with --no-project (#6554)

Documentation

  • Add documentation for uv python find (#6527)
  • Add uv tool install example in Docker (#6547)
  • Document why we do lower bounds (#6516)
  • Fix to miss string termination in PowerShell commands for shell autocompletion documentation (#6491)
  • Fix incorrect workspace members keyword (#6502)
  • Use proper environment variables for Windows (#6433)
  • Improve caveat in uvx note (#6546)

Install uv 0.3.3

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.3.3/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.3.3/uv-installer.ps1 | iex"

Download uv 0.3.3

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.3.2

23 Aug 03:32
c544000
Compare
Choose a tag to compare

Release Notes

Configuration

  • Add support for configuring python-downloads with UV_PYTHON_DOWNLOADS (#6436)
  • Add support for configuring the python-preference with UV_PYTHON_PREFERENCE (#6432)
  • Deny invalid members in workspace schema (#6450)

Performance

  • Stop streaming wheels when METADATA is discovered (if range requests aren't supported) (#6470)

Bug fixes

  • Remove URI type from JSON Schema (#6449)
  • Fix retrieval of credentials for URLs from cache (#6452)
  • Restore cache suffix on Windows cache path (#6482)
  • Treat .pyw files as scripts in uv run on Windows (#6453)
  • Treat invalid extras as false in marker evaluation (#6395)
  • Avoid overwriting symlinks in pip compile output (#6487)

Documentation

  • Add uv run hint to the uvx guide (#6454)
  • Add a guide for using uv with FastAPI (#6401)
  • Add tip for using managed = false to disable project management (#6465)
  • Clarify the uv tool run, uvx, and uv run relationships (#6455)
  • Fix references to --python-downloads (it is --no-python-downloads) (#6439)
  • Further clarifications to the tools documentation (#6474)
  • Update docs dockerfile (bullseye -> bookworm) (#6441)
  • Update the installation documentation page (#6468)
  • Update pip compatibility pages to mention configuration files support (#6410)
  • Add uv run docs for gui scripts (#6478)

Install uv 0.3.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.3.2/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.3.2/uv-installer.ps1 | iex"

Download uv 0.3.2

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.3.1

21 Aug 23:29
be17d13
Compare
Choose a tag to compare

Release Notes

Enhancements

  • Add --with-editable support to uv run (#6262)
  • Respect .python-version files and pyproject.toml in uv python find (#6369)
  • Allow manylinux compatibility override via _manylinux module (#6039)

CLI

  • Avoid treating uv add -r as --raw-sources (#6287)

Bug fixes

  • Always invoke found interpreter when uv run python is used (#6363)
  • Avoid adding extra newline for script with non-empty prelude (#6366)
  • Fix metadata cache instability for lockfile (#6332)
  • Handle Ctrl-C properly in uvx invocations (#6346)
  • Ignore workspace discovery errors with --no-workspace (#6328)
  • Invalidate uv.lock when virtual dev-dependencies change (#6291)
  • Make cache robust to removed archives (#6284)
  • Preserve Git username for SSH dependencies (#6335)
  • Respect --no-build-isolation in uv add (#6368)
  • Respect .python-version files in uv run outside projects (#6361)
  • Use sys_executable for uv run invocations (#6354)
  • Use atomic write for pip compile output (#6274)
  • Use consistent logic for deserializing short revisions (#6341)

Documentation

  • Remove the preview default value of python-preference (#6301)
  • Update env vars doc about XDG_* variables on macOS (#6337)

Install uv 0.3.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.3.1/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.3.1/uv-installer.ps1 | iex"

Download uv 0.3.1

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

0.3.0

20 Aug 17:53
dd1934c
Compare
Choose a tag to compare

Release Notes

This release introduces the uv project, tool, script, and python interfaces. If you've been following uv's development, you've probably seen these new commands behind a preview flag. Now, the interfaces are stable and ready for production-use.

These features are all documented in new, comprehensive documentation.

This release also stabilizes preview functionality in uv venv:

  • uv venv --python <version> will automatically download the Python version if required
  • uv venv will read the required Python version from the .python-version file or pyproject.toml

The uv pip interface should not be affected by any breaking changes.

Note the following changelog entries does not include all the new features since they were added incrementally as preview features. See the feature page in the documentation for a comprehensive listing, or read the blog post for more context on the new features.

Breaking changes

  • Migrate to XDG and Linux strategy for macOS directories (#5806)
  • Move concurrency settings to top-level (#4257)
  • Apply system Python filtering to executable name requests (#4309)
  • Remove --legacy-setup-py command-line argument (#4255)
  • Stabilize preview features (#6166)

Enhancements

  • Add 32-bit Windows target (#6252)
  • Add support for python_version in ... markers (#6172)
  • Allow user to constrain supported lock environments (#6210)
  • Lift requirement that .egg-info filenames must include version (#6179)
  • Change "any of" to "all of" in error messages (#6222)
  • Collapse redundant dependency clauses enumerating available versions (#6160)
  • Collapse unavailable packages in resolver errors (#6154)
  • Fix messages for unavailable packages when range is plural (#6221)
  • Improve resolver error messages when --offline is used (#6156)
  • Avoid overwriting dependencies with different markers in uv add (#6010)
  • Simplify available package version ranges when the name includes markers or extras (#6162)
  • Simplify version ranges reported for unavailable packages (#6155)
  • Rename environment-markers to resolution-markers (#6240)
  • Support uv add -r requirements.txt (#6005)

CLI

  • Hide global options in uv generate-shell-completion (#6170)
  • Show generate-shell-completion command in uv help (#6180)
  • Special-case reinstalls in environment update summaries (#6243)
  • Add output when uv add and uv remove update scripts (#6231)
  • Add support for package@latest in tool run (#6138)
  • Show python find output with -q (#6256)
  • Warn when --upgrade is passed to tool run (#6140)

Configuration

  • Allow customizing the tool install directory with UV_TOOL_BIN_DIR (#6207)

Performance

  • Use FxHash in uv-auth (#6149)

Bug fixes

  • Avoid panicking when the resolver thread encounters a closed channel (#6182)
  • Respect release-only semantics of python_full_version when constructing markers (#6171)
  • Tolerate missing [project] table in uv venv (#6178)
  • Avoid using workspace lock_path as relative root (#6157)

Documentation

  • Preview changes are now included in the standard changelog (#6259)
  • Document dynamic metadata behavior for cache (#5993)
  • Document the effect of ordering on package priority (#6211)
  • Make some edits to the workspace concept documentation (#6223)
  • Update environment variables doc (#5994)
  • Disable collapsible navigation in the documentation (#5674)
  • Document uv add and uv remove behavior with markers (#6163)
  • Document the Python installation directory (#6227)
  • Document the uv.pip section semantics (#6225)
  • Document the cache directory (#6229)
  • Document the tools directory (#6228)
  • Document yanked packages caveat during sync (#6219)
  • Link to persistent configuration options in Python versions document (#6226)
  • Link to the projects concept from the dependencies concept (#6224)
  • Improvements to the Docker installation guide (#6216)
  • Increase the size of navigation entries (#6233)
  • Install ca-certificates in docker and use pipefail (#6208)
  • Add script support to feature highlights in index (#6251)
  • Show uv generate-shell-completion in CLI documentation reference (#6146)
  • Update Docker guide for projects (#6217)
  • Use uv add --script in guide (#6215)
  • Show pinned version example on in GitHub Actions integration guide (#6234)

Install uv 0.3.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.3.0/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.3.0/uv-installer.ps1 | iex"

Download uv 0.3.0

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux [checksum](https://github.com/astral-sh/uv/releases/download/0.3.0/uv-s390x-unknown-lin...
Read more

0.2.37

16 Aug 02:46
15dfb66
Compare
Choose a tag to compare

Release Notes

Performance

  • Avoid cloning requirement for unchanged markers (#6116)

Bug fixes

  • Fix loading of cached metadata for Git distributions with subdirectories (#6094)

Error messages

  • Add env var to --link-mode=copy warning (#6103)
  • Avoid displaying "failed to download" on build failures for local source distributions (#6075)
  • Improve display of available package ranges (#6118)
  • Use "your requirements" consistently in resolver error messages (#6113)

Install uv 0.2.37

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.2.37/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -c "irm https://github.com/astral-sh/uv/releases/download/0.2.37/uv-installer.ps1 | iex"

Download uv 0.2.37

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64-unknown-linux-gnu.tar.gz PPC64 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum