Overview

Request 1202476 accepted

- Update source tarball from upstream GitHub instead of Python hosted
* i received a version lesser than the actual in python hosted.
upstream is more clearer to get.
- Update to version 0.4.15:
* Revert "Treat invalid platform as more compatible than invalid Python"
* Add the execution policy to powershell installs for single versions
* Move uvx shell completion to `uvx --generate-shell-completion`
* Adjust messaging for frozen hint on resolution failure during `uv add`
* Provide resolution hints in case of possible local name conflicts
* Improve Docker image release tagging order and display on `ghcr.io`
* Improve deserialization error messages
* Allow system environments during project environment validity check
* Avoid validating workspace members when `--no-sources` is provided
* Fix handling of `sys.base_prefix` collision in interpreter identity check during tool installs
* Make `uv cache prune` robust to unreadable rkyv entries
* Revert "Remove duplicate warning for settings discovery errors"
* Fix `-` to `_` in packaged applications document
* Add `socks` support
* Avoid warning about bad Python interpreter links for empty project environment directories
* Improve invalid environment warning messages
* Use more verbose spelling of "virtualenv" during creation
* Do not use a user-facing warning for "Waiting to acquire lock..." message
* Use a single buffer for hints on resolver errors
* Allow Python pre-releases to be used if they are first on the `PATH`
* Avoid deleting the project environment directory if it is not a virtual environment
* Do not error if the `CACHEDIR.TAG` file exists but cannot be written to
* Treat invalid platform as more compatible than invalid Python
* Use portable paths when serializing sources
* Compute resolver hints using the final reduced derivation tree
* Bump the wheel and sdist cache versions
* Heal cache entries with missing source distributions
* Bump minimum supported Rust version from 1.80 -> 1.81
* Add `UV_LINK_MODE` to Docker caching example
* Clarify behavior of of overrides in CLI reference
* Allow users to provide pre-defined metadata for resolution
* Invalidate existing tool environments on Python interpreter mismatch
* Avoid fatal error when searching for egg-info with missing directory
* Add note on cache growth for self-hosted GitHub runners
* Add `--no-editable` support to `uv sync` and `uv export`
* Add support for `--only-dev` to `uv sync` and `uv export`
* Add support for remaining pip-supported file extensions
* Generate shell completion for `uvx`
* Include `uv export` command in `requirements.txt` output
* Prune unzipped source distributions in `uv cache prune --ci`
* Warn when trying to `uv sync` a package without build configuration
* Support requests for pre-releases in the `--python` option
* Avoid erroneous version warning for `.dist-info` directories
* Avoid removing seed packages for `uv venv --seed` environments
* Avoid unnecessary progress bar initializations
* Error when `tool.uv.sources` contains duplicate package names
* Include `--branch` et al when resolving unnamed URLs in `uv add`
* Include `dev-dependencies` in `--no-sources` invocations
* Include the parent interpreter in Python discovery when `--system` is used
* Respect `--no-sources` in PEP 723 scripts
* Respect `pyproject.toml` credentials from user-provided requirements
* Use consistent PyPI cache bucket
* Use unambiguous relative paths in `uv export`
* Add documentation on platform-specific dependencies
* Add documentation for passing installer options on Linux
* Separate project data from configuration settings
* Hint at missing `project.name`
* Surface dedicated `project.name` error for workspaces
* Remove duplicate warning for settings discovery errors
* Allow `uv tool upgrade --all` to continue on individual upgrade failure
* Support globs as cache keys in `tool.uv.cache-keys`
* Add Python package (`__main__.py`) support to `uv run`
* Add zip application support to `uv run`
* Add `--token` option to `self update` command
* Use `globwalk` for `cache-keys` matching
* Always treat archive-like requirements as local files
* Apply `--no-install` options when constructing resolution
* Avoid clobbering existing `py.typed` files contents in `uv init`
* Avoid enforcing platform compatibility when validating lockfile
* Avoid installing transitive dev dependencies
* Avoid selecting prerelease Python installations without opt-in
* Fix PPC64 page size in binary builds.
* Include pre-release Python versions in `uv python list`
* Make version ID optional for source builds
* Support relative paths in `uv add --script`
* Fix documentation typos for `uv build --build-constraint` flag
* Fix grammatical error in CLI docs
* Add dedicated lock errors for wheel-only distributions
* Avoid treating `.whl` sources as source distributions
* Clarify Python requirement source for script incompatibilities
- Attempt to use clang+mold for faster and less memory intensive linking
* fallback to ld and gcc if leap.
- update to version 0.4.9
* Add support for managed Python 3.13
* Upgrade managed CPython versions to latest patch releases
* Allow setting a target version for uv self update
* Create py.typed files during uv init --lib
* Add a dedicated error for packages that fail due to distutils deprecation
* Improve error message when requested Python version is unsupported
* Add uv run --no-sync
* Avoid updating pyproject.toml offsets on non-add edits
* Invalidate cache when --config-settings change
* Remove workspace root for single-member workspace with uv export
- Set debuginfo for non-tier1 archs to "limited"
- This package is a chonker. Let's add some _constraints
- Force gcc version 13
- Update to version 0.4.8:
- Add support for dynamic cache keys
- Allow `.dist-info` names with dashes for post releases
- Use type hints in code from `uv init`
- Treat `.tgz` the same as `.tar.gz`
- Direct users towards `uv venv` to create a virtual environment
- Improve error message for uv init already init-ed
- Avoid batch prefetching for un-optimized registries
- Avoid iteration for singleton selections
- Avoid extra newlines in debug logging for source builds
- Prune unreachable packages from `--universal` output
- Respect exclusion when collecting workspace members
- Use path file instead of `sitecustomize.py`
- Replace incorrect `--source` and `--binary` flags with correct `--sdist` and `--wheel` flags in `uv build`
- Document support for `UV_INSTALL_DIR`
- List all supported sdist formats
- Add `--no-emit-project` and friends to `uv export`
- Add `--output-file` to `uv export`
- Prune unused source distributions from the cache in `uv cache prune`
- Take intersection of constraint and requirements hashes
- Skip metadata fetch for `--no-deps` and `pip sync`
- Avoid panicking when encountering an invalid Python version during `uv python list`
- Write trailing newline to `.python-version` files
- Accept `--build-constraints` in `uv build`
- Add `--require-hashes` and `--verify-hashes` to `uv build`
- Add `--show-version-specifiers` to `uv tool list`
- Respect hashes in constraints files
- Upgrade installer scripts
- Allow specifying multiple packages in `uv tool upgrade` and `uninstall`
- Sort by implementation in `uv python list`
- Invalidate lockfile when member versions change
- Strip fragments from direct source URLs in lockfile
- Support `--no-build` and `--no-binary` in `uv sync` et al
- Use distribution hash over registry hash
- Fix inverted log message
- Adjust Docker `ENTRYPOINT` and `CMD` for inherited images
- Add winget to installers
- Document how to disable path modifications during install
- Document how to manually update locked package version
- Document official `setup-uv` action
- Update docs on `.python-version` file
- Implement `uv build`
- Add `--package` support to `uv build`
- Prune unreachable packages from lockfile
- Prune unreachable wheels from lockfile
- Show build output by default in `uv build`
- Support `uv build --wheel` from source distributions
- Use the root project name for the project virtual environment prompt
- Fix handling of inline optional dependencies in `uv add`
- Reflect exit code in `uv tool run` and `uv run`
- Revert `pyproject.toml` modifications on Ctrl-C
- Rollback `pyproject.toml` changes on all errors
- Use correct ordering semantics for narrowing upper-bounded Python requirements
- Fix segfault in Windows trampolines
- Remove unused `__future__.annotations` import in `_virtualenv.py`
- Add documentation for `uv build`
- Add note to `extra` and `all-extras` in `uv sync` help
- Add project docs for `project.scripts`
- Fix available Docker image tag rendering and shorten list
- Touchup to the project environment config section
- Clarify precedence of `uv.toml`
- Fix available Docker tags for `-slim` variants
- Allow customizing the project environment path with `UV_PROJECT_ENVIRONMENT`
- Warn when `VIRTUAL_ENV` is set but will not be respected in project commands
- Add `--no-hashes` to `uv export`
- Make HTTP headers title case for backward compatibility
- Pin `.python-version` in `uv init`
- Support `file://` URLs for `UV_PYTHON_INSTALL_MIRROR`
- Introduce more docker tags for uv
- Avoid canonicalizing the cache directory
- Show all PyPy versions in `uv python list --all-versions`
- Avoid incorrect `requires-python` marker simplifications
- Add documentation for `UV_PROJECT_ENVIRONMENT`
- Add optional dependencies section to the lockfile document
- Document use of the `file://` scheme in Python installation mirrors
- Fix outdated references to the help menu documentation in the first steps page
- Show env option in CLI reference documentation
- Add bind mount example to `docker.md`
- Show build backend output when `--verbose` is provided
- Allow `uv sync --frozen --package` without copying member `pyproject.toml`
- Avoid panic with missing temporary directory
- Avoid updating incorrect dependencies for sorted `uv add`
- Use lower-bound semantics for all Python compatibility comparisons
- Adding support for `.pyc` files in `uv run`
- Treat missing `top_level.txt` as non-fatal
- Fix `is_disjoint` check for supported environments
- Remove dangling archives in `uv cache clean ${package}`
- Error when discovered Python is incompatible with `--isolated` workspace
- Warn when discovered Python is incompatible with PEP 723 script
- Add `uv export --format requirements-txt`
- Allow `@` references in `uv tool install --from`
- Normalize version specifiers by sorting
- Respect the user's upper-bound in `requires-python`
- Use Windows registry to discover Python on Windows directly
- Hint at `--no-workspace` in `uv init` failures
- Update to last PyPy releases
- Avoid deadlocks when multiple uv processes lock resources
- Expand tildes when matching against `PATH`
- Fix `uv init --no-project` alias
- Ignore pre-release segments when discovering via `requires-python`
- Support inline optional tables in `uv add` and `uv remove`
- Update default `hello.py` to pass `ruff format`
- Avoid stripping root for user path display
- Error when user-provided environments are disjoint with Python
- Retain alphabetical sorting for `pyproject.toml` in `uv add` operations
- Add a link to the multiple index docs in the alternative index guide
- Add docs for inline exclude newer in PEP 723 scripts
- Enumerate available Docker tags
- Omit `[pip]` section from configuration file docs
- Update `project.urls` in `pyproject.toml`
- Add docs for AWS CodeArtifact usage
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](http://docs.astral.sh/uv/concepts/projects/#build-systems) for more details.
- Add first-class support for non-packaged projects
- Add `--app` and `--lib` options to `uv init`
- Use `virtual` source label in lockfile for non-packaged dependencies
- Read hash from URL fragment if `--hashes` are omitted
- Support `{package}@{version}` in `uv tool install`
- Publish additional Docker tags without patch version
- Accept either strings or structs for hosts
- Avoid including non-excluded members in parent workspaces
- Avoid reading stale `.egg-info` from mutable sources
- Avoid writing invalid PEP 723 scripts on `tool.uv.sources`
- Compare virtual members when invalidating lockfile
- Do not require workspace members to sync with `--frozen`
- Implement deserialization for trusted host
- Avoid showing duplicate paths in `uv python list`
- Raise an error for unclosed script tags in PEP 723 scripts
- Add dependabot and renovate documentation page
- Bind to the host to allow connections in FastAPI Docker example
- Fix some broken links
- Update FastAPI guide for virtual projects and use `uv init` to create the `pyproject.toml`
- Update project documentation for the application / library concepts
- Update workspace documentation to remove legacy virtual projects
- Add support for `--allow-insecure-host` (aliased to `--trusted-host`)
- Read requirements from `requires.txt` when available
- Respect `tool.uv.environments` in `pip compile --universal`
- Use relative paths by default in `uv add`
- Improve messages for empty solves and installs
- Avoid reusing state across tool upgrades
- Detect musl and error for musl Python builds
- Ignore `send` errors in installer
- Add development section to Docker guide and reference new example project
- Add docs for `constraint-dependencies` and `override-dependencies`
- Clarify package priority order in pip compatibility guide
- Fix docs for disabling build isolation with `uv sync`
- Improve consistency of directory lookup instructions in Docker
- Improve lockfile concept documentation, add coverage for upgrades
- Shift the order of some of the Docker guide content
- Use `python` to highlight requirements and use more content tabs
- Show `--editable` on the `uv add` CLI
- Add `--refresh` to `tool run` warning for `--with` dependencies
- Allow per dependency build isolation for `setup.py`-based projects
- Avoid un-strict syncing by-default for build isolation
- Respect `--no-build-isolation-package` in `uv sync`
- Respect extras and markers on virtual dev dependencies
- Support PEP 723 scripts in GUI files
- Update lockfile after setting minimum bounds in `uv add`
- Use relative paths for `--find-links` and local registries
- Use separate types to represent raw vs. resolver markers
- Parse wheels `WHEEL` and `METADATA` files as email messages
- Support unquoted hrefs in `--find-links` and other HTML sources
- Don't canonicalize paths to user requirements
- Add FastAPI guide to overview
- Add docs for disabling build isolation with `uv sync`
- Add example of reading script from stdin using echo
- Add tip to use intermediate layers in Docker builds
- Clarify need to include `pyproject.toml` with `--no-install-project`
- Move `WORKDIR` directive in Docker examples
- Remove duplicate `WORKDIR` directive in Docker example
- Add `uv sync --no-install-project` to skip installation of the project
- Add `uv sync --no-install-workspace` to skip installation of all workspace members
- Add `uv sync --no-install-package` to skip installation of specific packages
- Show previous version in self update message
- Add `--no-project` alias for `uv python pin --no-workspace`
- Ignore `.python-version` files in `uv venv` with `--no-config`
- Include virtual environment interpreters in `uv python find`
- Respect `-` as stdin channel for `uv run`
- Revert changes to pyproject.toml when sync fails during `uv add`
- Add `UV_COMPILE_BYTECODE` environment variable
- Set `VIRTUAL_ENV` for `uv run` invocations
- Ignore errors in workspace discovery with `--no-project`
- Add documentation for `uv python find`
- Add uv tool install example in Docker
- Document why we do lower bounds
- Fix to miss string termination in PowerShell commands for shell autocompletion documentation
- Fix incorrect workspace members keyword
- Use proper environment variables for Windows
- Improve caveat in `uvx` note
- Add support for configuring `python-downloads` with `UV_PYTHON_DOWNLOADS`
- Add support for configuring the `python-preference` with `UV_PYTHON_PREFERENCE`
- Deny invalid members in workspace schema
- Stop streaming wheels when `METADATA` is discovered (if range requests aren't supported)
- Remove URI type from JSON Schema
- Fix retrieval of credentials for URLs from cache
- Restore `cache` suffix on Windows cache path
- Treat `.pyw` files as scripts in `uv run` on Windows
- Treat invalid extras as `false` in marker evaluation
- Avoid overwriting symlinks in `pip compile` output
- Add `uv run` hint to the `uvx` guide
- Add a guide for using uv with FastAPI
- Add tip for using `managed = false` to disable project management
- Clarify the `uv tool run`, `uvx`, and `uv run` relationships
- Fix references to `--python-downloads` (it is `--no-python-downloads`)
- Further clarifications to the tools documentation
- Update docs dockerfile (bullseye -> bookworm)
- Update the installation documentation page
- Update pip compatibility pages to mention configuration files support
- Add `uv run` docs for gui scripts
- Add `--with-editable` support to `uv run`
- Respect `.python-version` files and `pyproject.toml` in `uv python find`
- Allow manylinux compatibility override via `_manylinux` module
- Avoid treating `uv add -r` as `--raw-sources`
- Always invoke found interpreter when `uv run python` is used
- Avoid adding extra newline for script with non-empty prelude
- Fix metadata cache instability for lockfile
- Handle Ctrl-C properly in `uvx` invocations
- Ignore workspace discovery errors with `--no-workspace`
- Invalidate `uv.lock` when virtual `dev-dependencies` change
- Make cache robust to removed archives
- Preserve Git username for SSH dependencies
- Respect `--no-build-isolation` in `uv add`
- Respect `.python-version` files in `uv run` outside projects
- Use `sys_executable` for `uv run` invocations
- Use atomic write for `pip compile` output
- Use consistent logic for deserializing short revisions
- Remove the preview default value of `python-preference`
- Update env vars doc about `XDG_*` variables on macOS
This release introduces the uv [project](https://docs.astral.sh/uv/guides/projects/),
[tool](https://docs.astral.sh/uv/guides/tools/),
[script](https://docs.astral.sh/uv/guides/scripts/), and
[python](https://docs.astral.sh/uv/guides/install-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](https://docs.astral.sh/uv/).
This release also stabilizes preview functionality in `uv venv`:
- `uv venv --python ` will [automatically
download](https://docs.astral.sh/uv/concepts/python-versions/#requesting-a-version) 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](https://docs.astral.sh/uv/getting-started/features/) in the documentation for a
comprehensive listing, or read the [blog post](https://astral.sh/blog/uv-unified-python-packaging)
for more context on the new features.
- Migrate to XDG and Linux strategy for macOS directories
- Move concurrency settings to top-level
- Apply system Python filtering to executable name requests
- Remove `--legacy-setup-py` command-line argument
- Stabilize preview features
- Add 32-bit Windows target
- Add support for `python_version in ...` markers
- Allow user to constrain supported lock environments
- Lift requirement that .egg-info filenames must include version
- Change "any of" to "all of" in error messages
- Collapse redundant dependency clauses enumerating available versions
- Collapse unavailable packages in resolver errors
- Fix messages for unavailable packages when range is plural
- Improve resolver error messages when `--offline` is used
- Avoid overwriting dependencies with different markers in `uv add`
- Simplify available package version ranges when the name includes markers or extras
- Simplify version ranges reported for unavailable packages
- Rename `environment-markers` to `resolution-markers`
- Support `uv add -r requirements.txt`
- Hide global options in `uv generate-shell-completion`
- Show generate-shell-completion command in `uv help`
- Special-case reinstalls in environment update summaries
- Add output when `uv add` and `uv remove` update scripts
- Add support for `package@latest` in `tool run`
- Show `python find` output with `-q`
- Warn when `--upgrade` is passed to `tool run`
- Allow customizing the tool install directory with `UV_TOOL_BIN_DIR`
- Use `FxHash` in `uv-auth`
- Avoid panicking when the resolver thread encounters a closed channel
- Respect release-only semantics of `python_full_version` when constructing markers
- Tolerate missing `[project]` table in `uv venv`
- Avoid using workspace `lock_path` as relative root
- Preview changes are now included in the standard changelog
- Document dynamic metadata behavior for cache
- Document the effect of ordering on package priority
- Make some edits to the workspace concept documentation
- Update environment variables doc
- Disable collapsible navigation in the documentation
- Document `uv add` and `uv remove` behavior with markers
- Document the Python installation directory
- Document the `uv.pip` section semantics
- Document the cache directory
- Document the tools directory
- Document yanked packages caveat during sync
- Link to persistent configuration options in Python versions document
- Link to the projects concept from the dependencies concept
- Improvements to the Docker installation guide
- Increase the size of navigation entries
- Install `ca-certificates` in docker and use pipefail
- Add script support to feature highlights in index
- Show `uv generate-shell-completion` in CLI documentation reference
- Update Docker guide for projects
- Use `uv add --script` in guide
- Show pinned version example on in GitHub Actions integration guide
- Avoid cloning requirement for unchanged markers
- Fix loading of cached metadata for Git distributions with
subdirectories
- Add env var to `--link-mode=copy` warning
- Avoid displaying "failed to download" on build failures for local source
distributions
- Improve display of available package ranges
- Use "your requirements" consistently in resolver error messages
- Add `python-version-file` to GitHub integration documentation
- Always narrow markers by Python version
- Avoid warning for redundant `--no-project`
- Change the definition of `--locked` to require satisfaction check
- Improve debug log for interpreter requests during project
commands
- Improve display of resolution errors for workspace member conflicts with optional
dependencies
- Improve resolver error messages for single-project workspaces
- Improve resolver error messages referencing workspace members
- Invalidate `uv.lock` if registry sources are removed
- Propagate fork markers to extras
- Redact Git credentials from `pyproject.toml`
- Redact Git credentials in lockfile
- Remove 'tool' reference on `uv run` CLI
- Remove `same-graph` merging in resolver
- Strip SHA when constructing package source
- Treat Git sources as immutable in lockfile
- Use the proper singular form for workspace member dependencies in resolver
errors
- Use sets rather than vectors for lockfile requirements
- Normalize `python_version` markers to `python_full_version`
- Update Pythons to include Python 3.12.5
- Use consistent canonicalization for URLs
- Improve warning message when parsing `pyproject.toml` fails
- Improve handling of overlapping markers in universal resolver
- Add resolver error context to `run` and `tool run`
- Avoid replacing executables on no-op upgrades
- Colocate Python install cache with destination directory
- Filter mixed sources from `--find-links` entries in lockfile
- Fix some outdated documentation discussing Python environments
- Fix projects guide typo
- Fix tools guide typo
- Hide python options in `uv tool list` help
- Improve top-level help for `uv tool` commands
- Move help documentation into dedicated page
- Remove `editable: false` support
- Remove uses of `Option` in `ResolutionGraph`
- Resolve relative `tool.uv.sources` relative to containing project
- Support PEP 723 scripts in `uv add` and `uv remove`
- Support `tool.uv` in PEP 723 scripts
- Treat local indexes as registry sources in lockfile
- Use simplified paths in lockfile
- Use upgrade-specific output for tool upgrade
- Deprecate `--system` and `--no-system` in `uv venv`
- Make `--upgrade` imply `--refresh`
- Warn when there are missing bounds on transitive dependencies
with `--resolution-strategy lowest`
- Add support for `no-build-isolation-package`
- Enable LTO optimizations in release builds to reduce binary size
- Prefetch metadata in `--no-deps` mode
- Display portable paths in POSIX virtual environment activation
commands
- Respect subdirectories when locating Git workspaces
- Improve the `uv venv` CLI documentation
- Add CLI flags to reference documentation
- Add `update` alias for `uv tool upgrade`
- Add caveat about pip interface name
- Add hint for long help to `uvx`
- Avoid requires-python warning in virtual-only workspace
- Discard forks when using `--upgrade`
- Document the `tool upgrade` command
- Document virtual environment discovery
- Enable mirror for `python-build-standalone` downloads
- Fix reuse of Git commits in lockfile
- Ignore local configuration in tool commands
- Improve the CLI documentation for `uv add`
- Improve the CLI documentation for `uv remove`
- Improve the `uv lock` CLI documentation
- Improve the `uv python` CLI documentation
- Improve the `uv sync` CLI documentation
- Improve the `uv tree` CLI documentation
- Fix link to tools concept page
- Add `uv tool upgrade` command
- Implement marker trees using algebraic decision diagrams
- Make repeated `uv add` operations simpler
- Move some documents to relevant sections
- Rename `distribution` to `packages` in lockfile
- Respect `--upgrade-package` in tool install
- Respect `--upgrade-package` when resolving from lockfile
- Retain and respect settings in tool upgrades
- Search beyond workspace root when discovering configuration
- Show build and install summaries in `uv run` and `uv tool run`
- Support relative path wheels
- Update the interface for declaring Python download preferences
- Use cached environments for `--with` layers
- Warn when project-specific settings are passed to non-project `uv run`
commands
- Always strip in release mode
- Assume `git+` prefix when URLs end in `.git`
- Support build constraints
- Create help sections for build, install, resolve, and index
- Improve CLI documentation for global options
- Improve `--python` CLI documentation
- Improve display order of top-level commands
- Allow downloading wheels for metadata with `--no-binary`
- Reject `pyproject.toml` in `--config-file`
- Remove double-proxy nodes in error reporting
- Respect pre-release preferences from input files
- Support overlapping local and non-local requirements in forks
- Add "next steps" to some early documentation pages
- Add `--no-build-isolation` to uv lock et al
- Add `--no-sources` to avoid reading from `tool.uv.sources`
- Add `uv add --no-sync` and `uv remove --no-sync`
- Add a guide for publishing packages
- Address some feedback in the tools documentation
- Avoid lingering dev and optional dependencies in `uv tree`
- Avoid mismatch in `--locked` with Git dependencies
- Avoid panic when re-locking with precise commit
- Avoid using already-installed tools on `--upgrade`
or `--reinstall`
- Better workspace documentation
- Collapse policies section into reference
- Don't show deprecated warning in `uvx --isolated`
- Ensure `python`-to-`pythonX.Y` symlink exists in downloaded
Pythons
- Fix CLI reference URLs to subcommands
- Fix some console blocks in the environment doc
- Group resolver options in lockfile
- Improve CLI documentation for `uv tree`
- Improve documentation for `uv init` CLI
- Improvements to the documentation
- Link to the GitHub integration guide from the cache concept
- Make some minor tweaks to the docs
- Omit local segments when adding uv add bounds
- Remove top-level bar from Python installs
- Replace `uv help python` references in CLI documentation with
links
- Respect `.python-version` in `--isolated` runs
- Respect malformed `.dist-info` directories in tool installs
- Reuse existing virtualenvs with `--no-project`
- Rewrite resolver docs
- Show default and possible options in CLI reference documentation
- Skip files when detecting workspace members
- Support empty dependencies in PEP 723 scripts
- Support uv add `--dev` in virtual workspaces
- Update documentation index
- Update resolver reference documentation
- Update the override section with some content from the README
- Update the resolution concept documentation
- Use cache for Python install temporary directories
- Use lockfile directly in `uv tree`
- Use uv installer during build
- Filter `uv tree` to current platform by default
- Redact registry credentials in lockfile
- Show extras and dev dependencies in `uv tree`
- Support `--python-platform` in `uv tree`
- Add help heading for `--no-sources`
- Avoid reusing incompatible distributions across lock and sync
- Fix broken anchor links in docs about dependencies
- Fix the default value of python-preference in
docs/reference/settings.md
- Improve CLI documentation for `uv run`
- Remove some trailing backticks from the docs
- Use `uvx` in docs serve contributing command
- Remove nostrip.patch. Using CARGO_* environmental variables to set build
- Add shell completions for bash, fish, and zsh.
- Add nostrip.patch.
* this solves the issue of already stripped binaries from rpmlint
- Update specfile:
* source now points to python hosted
* use maturin now for builds
* prep to be a rust+python package
- Move to generic python package naming: python-uv
- Update to version 0.2.33:
* Add support for ksh to relocatable virtual environments
* Add help sections for global options
* Move --python and --python-version into the "Python options" help
* Show help specific options (i.e. --no-pager) in uv help
* Update top-level command descriptions
* Remove lingering executables after failed installs
* Switch from heuristic freshness lifetime to hard-coded value
* Don't use equals signs for CLI options with values
- Use upstream github sources in specfile.
- Add zstd as build requirement.
- Update to version 0.2.30. Changelog include since 0.1.47:
* Infer missing `.exe` in Windows Python discovery
* Make `--reinstall` imply `--refresh`
* Add `--no-config` to replace `--isolated`
* Cache metadata for source tree dependencies
* Avoid canonicalizing executables on Windows
* Set standard permissions for temporary files
* Add `--ci` mode to `uv cache prune`
* Display Python installation key for discovered interpreters
* Allow symlinks to files in scripts directory
* Always accept already-installed pre-releases
* Validate successful metadata fetch for direct dependencies
* Add warning to `--link-mode=symlink` documentation
* Output stable ordering to `requirements.txt` in universal mode
* Allow symlinks with `--find-links`
* Add support for variations of `pythonw.exe`
* Stylize `Requires-Python` consistently in CLI output
* Add `--show-version-specifiers` to `tree`
* Avoid always rebuilding dynamic metadata
* Avoid URL parsing when deserializing wheels
* Avoid cache prune failure due to removed interpreter
* Avoid including empty extras in resolution
* If multiple indices contain the same version, use the first index
* Include URLs on graph edges
* Match wheel tags against `Requires-Python` major-minor
* Remove Simple API cache files for alternative indexes in `cache clean`
* Remove extraneous `are` from wheel tag error messages
* Allow conflicting prerelease strategies when forking
* Use tag error rather than requires-python error for ABI filtering
* Add GraalPy support
* Add a `--verify-hashes` hash-checking mode
* Discover all `python3.x` executables in the `PATH`
* Support `--link-mode=symlink`
* Warn about unconstrained direct deps in lowest resolution
* Log origin of version selection
* Key hash policy on version, rather than package
* Make missing project table a tracing warning
* Remove trailing period from user-facing messages
* Make entrypoint writes atomic to avoid overwriting symlinks
* Use `which`-retrieved path directly when spawning pager
* Don't apply irrelevant constraints when validating site-packages
* Respect local versions for all user requirements
* Add `--no-progress` global option to hide all progress animations
* Cache downloaded wheel when range requests aren't supported
* Download wheel to disk when streaming unzip failed with HTTP streaming error
* Filter out invalid wheels based on `requires-python`
* Filter out none ABI wheels with mismatched Python versions
* Lock Git cache on resolve
* Change order of `pip compile` command checks to handle exact argument first
* Document that `--universal` implies `--no-strip-markers`
* Include PyPy-specific executables when creating virtual environments with `uv venv`
* Add a custom error message for `--no-build-isolation` `torch` dependencies
* Improve missing `wheel` error message with `--no-build-isolation`
* Add `--no-pager` option in `help` command
* Unhide `--isolated` global argument
* Warn when unused `pyproject.toml` configuration is detected
* Fall back to streaming wheel when `Content-Length` header is absent
* Fix substring marker expression disjointness checks
* Lock directories to synchronize wheel-install copies
* Normalize out complementary == or != markers
* Retry on permission errors when persisting extracted source distributions to the cache
* Set absolute URLs prior to uploading to PyPI
* Exclude `--upgrade-package` from the `pip compile` header
* Exclude `--upgrade-package` when option and value are passed as a single argument
* Add split to cover marker universe when existing splits are incomplete
* Use correct `pyproject.toml` path in warnings
* Fix `CONTRIBUTING.md` instructions to install multiple Python versions
* Use versioned badges when uploading to PyPI
* Add support for 'any' Python requests
* Allow constraints to be provided in `--upgrade-package`
* Add `manylinux_2_31` to supported `--python-platform`
* Improve marker simplification
* Display short help menu when `--help` is used
* Allow `uv help` global options during `uv help`
* Use paging for `uv help` display when available
* Switch to single threaded async runtime
* Avoid AND-ing multi-term specifiers in marker normalization
* Avoid inferring package name for GitHub Archives
* Retry on connection reset network errors
* Apply extra to overrides and constraints
* Allow `uv` crate to be used as a library
* Update Windows trampoline binaries
* Show user-facing warning when falling back to copy installs
* Initialize all `--prefix` subdirectories
* Respect `requires-python` when prefetching
* Partially revert `Requires-Python` version narrowing
* Add `--exclude-newer` to installer arguments
* Bold durations in CLI messages
* Drop crate description from the `uv` help menu
* Update "about" in help menu
* Add `UV_OVERRIDE` environment variable for `--override`
* Always use release-only comparisons for `requires-python`
* Avoid hangs before exiting CLI
* Preserve verbatim URLs for `--find-links`
* Fix issue where standalone installer failed to due missing `uvx.exe` binary on Windows
* Differentiate `freeze` and `list` help text
* Fix issue where the standalone installer failed due to a missing `uvx` binary
* Indicate when we retried requests during network errors
* Add `--disable-pip-version-check` to compatibility arguments
* Allow `uv pip sync` to clear an environment with opt-in
* Add `--invert` to `uv pip tree`
* Omit `(*)` in `uv pip tree` for empty packages
* Add `--package` to `uv pip tree`
* Fix bug where git cache did not validate commits correctly
* Narrow `requires-python` requirement in resolver forks
* Fix bug when pruning the last package in `uv pip tree`
* Make `--universal` and `--python-platform` mutually exclusive
* Add `--depth` and `--prune` support to `pip tree`
* Handle cycles when propagating markers
* Ignore `py` not found errors during interpreter discovery
* Merge markers when applying constraints
* Retry on spurious failures when caching built wheels
* Sort indexes during graph edge removal
* Treat Python version as a lower bound in `--universal`
* Fix the incorrect handling of markers in `pip tree`
* Improve toolchain and environment missing error messages
* Explicitly mention use of seed packages during `uv venv --seed`
* Avoid enforcing extra-only constraints
* Add a universal resolution mode to `uv pip compile` with `--universal`
* Add support for `--no-strip-markers` in `uv pip compile` output
* Add `--no-dedupe` support to `uv pip tree`
* Enable more precise environment locking with `--prefix`
* Allow local index references in `requirements.txt` files
* Allow non-`file://` paths to serve as `--index-url` values
* Make `.egg-info` filename parsing spec compliant
* Gracefully handle non-existent packages in local indexes
* Read content length from response rather than request
* Read persistent configuration from non-workspace `pyproject.toml`
* Avoid panic for invalid, non-base index URLs
* Skip submodule update for fresh clones
* Use shared client in Git fetch implementation
* Add `--emit-build-options` flag to `uv pip compile` interface
* Add `pythonw` support for gui scripts on Windows
* Add `uv pip tree`
* Adjust the docs for the pip CLI commands
* Fix casing of `--no-compile` alias
* Fix ordering of prefer-system toolchain preference
* Respect index strategy in source distribution builds
* Add documentation for using uv in a Docker image
* Support toolchain requests with platform-tag style Python implementations and version
* Use "Prepared" instead of "Downloaded" in logs
* Treat mismatched directory and file urls as unsatisfied requirements
* Add resolver tracing logs for when we filter requirements
* Allow specific `--only-binary` and `--no-binary` packages to override `:all:`
* Flatten ORs and ANDs in marker construction
* Skip invalid interpreters when searching for requested interpreter executable name
* Display keyring stderr during queries
* Allow discovery of uv binary relative to package root
* Use relative path for `lib64` symlink
* Add uv version to debug output
* Allow `--no-binary` with `uv pip compile`
* Hide `--no-system` from the CLI
* Make `--reinstall`, `--upgrade`, and `--refresh` shared arguments
* Add `UV_EXCLUDE_NEWER` environment variable
* Allow normalization to completely eliminate markers
* Avoid treating direct path archives as always dynamic
* De-duplicate markers during normalization
* Fix incorrect parsing of requested Python version as empty version specifiers
* Suggest correct command to create a virtual environment when encountering externally managed interpreters
* Use consistent order for extra groups in lockfile
* Add `pip-compile` defaults to `PIP_COMPATIBILITY.md`
* Expand on `pip-compile` default differences
* Tweak copy on some command-line arguments
* Move the preview changelog so the GitHub Release shows stable changes
* Add support for local directories with `--index-url`
* Add mTLS support
* Allow version specifiers to be used in Python version requests
* Always install as editable when duplicate dependencies are requested
* Avoid crash with `XDG_CONFIG_HOME=/dev/null`
* Improve handling of missing interpreters during discovery
* Make missing `METADATA` file a recoverable error
* Represent build tag as `u64`
* Document Windows 10 requirement
* Re-add `aarch64-unknown-linux-gnu` binary to release assets
* Accept `file://` URLs for `requirements.txt` et all references
* Add support for `--prefix`
* Add `pyproject.toml` to CLI help
* Drop "registry" prefix from request timeout log
* Allow transitive URLs via recursive extras
* Avoid pre-fetching for unbounded minimum versions
* Avoid showing dev hints for Python requirements
* Include non-standard ports in keyring host queries
* Omit URL dependencies from pre-release hints
* Improve static metadata extraction for Poetry projects
* Document bytecode compilation in pip compatibility guide
* Fix PEP 508 link in preview doc `specifying_dependencies`
* Clarify role of `--system` flag
* Respect existing `.egg-link` files in site packages
* Avoid extra-only filtering for constraints
* Add install link for specific version to README
* Fix `uv venv` handling when `VIRTUAL_ENV` refers to an non-existent environment
* Support `NO_COLOR` and `FORCE_COLOR` environment variables
* Avoid building packages with dynamic versions
* Avoid work-stealing in bytecode compilation
* Avoid dropping `pip sync` requirements with markers
* Bias towards local directories for bare editable requirements
* Preserve fragments when applying verbatim redirects
* Avoid 'are incompatible' for singular bounded versions
* Support PEP 508 requirements for editables
* Discard fragments when parsing unnamed URLs
* Port all Git functionality to use Git CLI
* Use statically linked C runtime on Windows
* Disable concurrent progress bars in Jupyter Notebooks
* Initialize multi-progress state before individual bars
* Add missing `i686` alias for `x86`
* Add missing `ppc64le` alias for `powerpc64le`
* Fix reference to `--python-version` patch behavior
* Avoid race condition in `OnceMap`
* Add support for x86 Windows
* Add support for `prepare_metadata_for_build_editable` hook
* Add concurrent progress bars for downloads
* Update bundled Python URLs and add `"arm"` architecture variant
* Allow `--system` and `--python` to be passed together
* Ignore `libc` on other platforms
* Incorporate build tag into wheel prioritization
* Avoid displaying log for satisfied editables if none are requested
* Improve logging during interpreter discovery
* Improve logging for environment locking
* Improve logging of interpreter implementation
* Remove extra details from interpreter query traces
* Use colon more consistently in error messages
* Add JSON alias for `unsafe-any-match`
* Remove redundant dynamically linked Linux binary again (#3762)"
* Remove `aarch64-unknown-linux-gnu` from list of expected binaries
* Always include package names for Git and HTTPS dependencies
* Fix interpreter cache collisions for relative virtualenv paths
* Ignore unnamed requirements in preferences
* Search for `python3` in unix virtual environments
* Use a cross-platform representation for relative paths in `pip compile`
* Report yanks for cached and resolved packages
* Improve error message when default Python is not found
* Do not treat interpereters discovered via `CONDA_PREFIX` as system interpreters
* Re-added the dynamically-linked Linux binary
* Rewrite Python interpreter discovery
* Add support for requesting `pypy` interpreters by implementation name
* Discover and prefer the parent interpreter when invoked with `python -m uv` [#3736](https://github.com/astral-sh/uv/pull/3736)
* Add PEP 714 support for HTML API client
* Add PEP 714 support for JSON API client
* Write relative paths with unnamed requirement syntax
* Allow relative Python executable paths in Windows trampoline
* Add support for clang and msvc in missing header error
* Allow `--constraint` files in `pip sync`
* Allow `--config-file` to be passed before or after command name
* Make `--offline` a global argument
* Improve performance in complex resolutions by reducing cost of PubGrub package clones
* Evaluate arbitrary markers to `false`
* Improve `DirWithoutEntrypoint` error message
* Improve display of root package in range errors
* Propagate URL errors in verbatim parsing
* Report yanked packages in `--dry-run`
* Drop native `manylinux` wheel in favor of dual-tagged wheel
* The `python-patch` test feature is no longer on by default and must be manually enabled to test patch version behavior
* Add `--prefix` link to compatibility guide
* Add `--only-binary` to compatibility guide
* Add instructions for building and updating `uv-trampolines`
* Add notes for testing on Windows
* Parse and store extras on editable requirements
* Allow local versions in wheel filenames
* Create lib64 symlink for 64-bit, non-macOS, POSIX environments
* Add `UV_CONCURRENT_INSTALLS` variable in favor of `RAYON_NUM_THREADS`
* Add serialization and deserialization for `--find-links`
* Apply combination logic to merge CLI and persistent configuration
* Parallelize resolver
* Reduce sensitivity of unknown option error to discard Python 2 interpreters
* Respect installed packages in `uv run`
* Separate cache construction from initialization
* Add missing `"directory"` branch in source match
* Fix source annotation in pip compile `annotation-style=line` output
* Run cargo update to pull in h2
* URL-decode hashes in HTML fragments
* Always print JSON output with `--format` json
* Add `UV_CONFIG_FILE` environment variable to documentation
* Explicitly mention `--user` in compatibility guide
* Add musl ppc64le support
* Retag musl aarch64 for manylinux2014
* Reverts "Use manylinux: auto to enable `musllinux_1_2` aarch64 builds
The manylinux change appeared to introduce SSL errors when building aarch64 Docker images, e.g.,
> invalid peer certificate: BadSignature
- Initial package.

Loading...
Request History
Soc Virnyl Estela's avatar

uncomfyhalomacro created request

- Update source tarball from upstream GitHub instead of Python hosted
* i received a version lesser than the actual in python hosted.
upstream is more clearer to get.
- Update to version 0.4.15:
* Revert "Treat invalid platform as more compatible than invalid Python"
* Add the execution policy to powershell installs for single versions
* Move uvx shell completion to `uvx --generate-shell-completion`
* Adjust messaging for frozen hint on resolution failure during `uv add`
* Provide resolution hints in case of possible local name conflicts
* Improve Docker image release tagging order and display on `ghcr.io`
* Improve deserialization error messages
* Allow system environments during project environment validity check
* Avoid validating workspace members when `--no-sources` is provided
* Fix handling of `sys.base_prefix` collision in interpreter identity check during tool installs
* Make `uv cache prune` robust to unreadable rkyv entries
* Revert "Remove duplicate warning for settings discovery errors"
* Fix `-` to `_` in packaged applications document
* Add `socks` support
* Avoid warning about bad Python interpreter links for empty project environment directories
* Improve invalid environment warning messages
* Use more verbose spelling of "virtualenv" during creation
* Do not use a user-facing warning for "Waiting to acquire lock..." message
* Use a single buffer for hints on resolver errors
* Allow Python pre-releases to be used if they are first on the `PATH`
* Avoid deleting the project environment directory if it is not a virtual environment
* Do not error if the `CACHEDIR.TAG` file exists but cannot be written to
* Treat invalid platform as more compatible than invalid Python
* Use portable paths when serializing sources
* Compute resolver hints using the final reduced derivation tree
* Bump the wheel and sdist cache versions
* Heal cache entries with missing source distributions
* Bump minimum supported Rust version from 1.80 -> 1.81
* Add `UV_LINK_MODE` to Docker caching example
* Clarify behavior of of overrides in CLI reference
* Allow users to provide pre-defined metadata for resolution
* Invalidate existing tool environments on Python interpreter mismatch
* Avoid fatal error when searching for egg-info with missing directory
* Add note on cache growth for self-hosted GitHub runners
* Add `--no-editable` support to `uv sync` and `uv export`
* Add support for `--only-dev` to `uv sync` and `uv export`
* Add support for remaining pip-supported file extensions
* Generate shell completion for `uvx`
* Include `uv export` command in `requirements.txt` output
* Prune unzipped source distributions in `uv cache prune --ci`
* Warn when trying to `uv sync` a package without build configuration
* Support requests for pre-releases in the `--python` option
* Avoid erroneous version warning for `.dist-info` directories
* Avoid removing seed packages for `uv venv --seed` environments
* Avoid unnecessary progress bar initializations
* Error when `tool.uv.sources` contains duplicate package names
* Include `--branch` et al when resolving unnamed URLs in `uv add`
* Include `dev-dependencies` in `--no-sources` invocations
* Include the parent interpreter in Python discovery when `--system` is used
* Respect `--no-sources` in PEP 723 scripts
* Respect `pyproject.toml` credentials from user-provided requirements
* Use consistent PyPI cache bucket
* Use unambiguous relative paths in `uv export`
* Add documentation on platform-specific dependencies
* Add documentation for passing installer options on Linux
* Separate project data from configuration settings
* Hint at missing `project.name`
* Surface dedicated `project.name` error for workspaces
* Remove duplicate warning for settings discovery errors
* Allow `uv tool upgrade --all` to continue on individual upgrade failure
* Support globs as cache keys in `tool.uv.cache-keys`
* Add Python package (`__main__.py`) support to `uv run`
* Add zip application support to `uv run`
* Add `--token` option to `self update` command
* Use `globwalk` for `cache-keys` matching
* Always treat archive-like requirements as local files
* Apply `--no-install` options when constructing resolution
* Avoid clobbering existing `py.typed` files contents in `uv init`
* Avoid enforcing platform compatibility when validating lockfile
* Avoid installing transitive dev dependencies
* Avoid selecting prerelease Python installations without opt-in
* Fix PPC64 page size in binary builds.
* Include pre-release Python versions in `uv python list`
* Make version ID optional for source builds
* Support relative paths in `uv add --script`
* Fix documentation typos for `uv build --build-constraint` flag
* Fix grammatical error in CLI docs
* Add dedicated lock errors for wheel-only distributions
* Avoid treating `.whl` sources as source distributions
* Clarify Python requirement source for script incompatibilities
- Attempt to use clang+mold for faster and less memory intensive linking
* fallback to ld and gcc if leap.
- update to version 0.4.9
* Add support for managed Python 3.13
* Upgrade managed CPython versions to latest patch releases
* Allow setting a target version for uv self update
* Create py.typed files during uv init --lib
* Add a dedicated error for packages that fail due to distutils deprecation
* Improve error message when requested Python version is unsupported
* Add uv run --no-sync
* Avoid updating pyproject.toml offsets on non-add edits
* Invalidate cache when --config-settings change
* Remove workspace root for single-member workspace with uv export
- Set debuginfo for non-tier1 archs to "limited"
- This package is a chonker. Let's add some _constraints
- Force gcc version 13
- Update to version 0.4.8:
- Add support for dynamic cache keys
- Allow `.dist-info` names with dashes for post releases
- Use type hints in code from `uv init`
- Treat `.tgz` the same as `.tar.gz`
- Direct users towards `uv venv` to create a virtual environment
- Improve error message for uv init already init-ed
- Avoid batch prefetching for un-optimized registries
- Avoid iteration for singleton selections
- Avoid extra newlines in debug logging for source builds
- Prune unreachable packages from `--universal` output
- Respect exclusion when collecting workspace members
- Use path file instead of `sitecustomize.py`
- Replace incorrect `--source` and `--binary` flags with correct `--sdist` and `--wheel` flags in `uv build`
- Document support for `UV_INSTALL_DIR`
- List all supported sdist formats
- Add `--no-emit-project` and friends to `uv export`
- Add `--output-file` to `uv export`
- Prune unused source distributions from the cache in `uv cache prune`
- Take intersection of constraint and requirements hashes
- Skip metadata fetch for `--no-deps` and `pip sync`
- Avoid panicking when encountering an invalid Python version during `uv python list`
- Write trailing newline to `.python-version` files
- Accept `--build-constraints` in `uv build`
- Add `--require-hashes` and `--verify-hashes` to `uv build`
- Add `--show-version-specifiers` to `uv tool list`
- Respect hashes in constraints files
- Upgrade installer scripts
- Allow specifying multiple packages in `uv tool upgrade` and `uninstall`
- Sort by implementation in `uv python list`
- Invalidate lockfile when member versions change
- Strip fragments from direct source URLs in lockfile
- Support `--no-build` and `--no-binary` in `uv sync` et al
- Use distribution hash over registry hash
- Fix inverted log message
- Adjust Docker `ENTRYPOINT` and `CMD` for inherited images
- Add winget to installers
- Document how to disable path modifications during install
- Document how to manually update locked package version
- Document official `setup-uv` action
- Update docs on `.python-version` file
- Implement `uv build`
- Add `--package` support to `uv build`
- Prune unreachable packages from lockfile
- Prune unreachable wheels from lockfile
- Show build output by default in `uv build`
- Support `uv build --wheel` from source distributions
- Use the root project name for the project virtual environment prompt
- Fix handling of inline optional dependencies in `uv add`
- Reflect exit code in `uv tool run` and `uv run`
- Revert `pyproject.toml` modifications on Ctrl-C
- Rollback `pyproject.toml` changes on all errors
- Use correct ordering semantics for narrowing upper-bounded Python requirements
- Fix segfault in Windows trampolines
- Remove unused `__future__.annotations` import in `_virtualenv.py`
- Add documentation for `uv build`
- Add note to `extra` and `all-extras` in `uv sync` help
- Add project docs for `project.scripts`
- Fix available Docker image tag rendering and shorten list
- Touchup to the project environment config section
- Clarify precedence of `uv.toml`
- Fix available Docker tags for `-slim` variants
- Allow customizing the project environment path with `UV_PROJECT_ENVIRONMENT`
- Warn when `VIRTUAL_ENV` is set but will not be respected in project commands
- Add `--no-hashes` to `uv export`
- Make HTTP headers title case for backward compatibility
- Pin `.python-version` in `uv init`
- Support `file://` URLs for `UV_PYTHON_INSTALL_MIRROR`
- Introduce more docker tags for uv
- Avoid canonicalizing the cache directory
- Show all PyPy versions in `uv python list --all-versions`
- Avoid incorrect `requires-python` marker simplifications
- Add documentation for `UV_PROJECT_ENVIRONMENT`
- Add optional dependencies section to the lockfile document
- Document use of the `file://` scheme in Python installation mirrors
- Fix outdated references to the help menu documentation in the first steps page
- Show env option in CLI reference documentation
- Add bind mount example to `docker.md`
- Show build backend output when `--verbose` is provided
- Allow `uv sync --frozen --package` without copying member `pyproject.toml`
- Avoid panic with missing temporary directory
- Avoid updating incorrect dependencies for sorted `uv add`
- Use lower-bound semantics for all Python compatibility comparisons
- Adding support for `.pyc` files in `uv run`
- Treat missing `top_level.txt` as non-fatal
- Fix `is_disjoint` check for supported environments
- Remove dangling archives in `uv cache clean ${package}`
- Error when discovered Python is incompatible with `--isolated` workspace
- Warn when discovered Python is incompatible with PEP 723 script
- Add `uv export --format requirements-txt`
- Allow `@` references in `uv tool install --from`
- Normalize version specifiers by sorting
- Respect the user's upper-bound in `requires-python`
- Use Windows registry to discover Python on Windows directly
- Hint at `--no-workspace` in `uv init` failures
- Update to last PyPy releases
- Avoid deadlocks when multiple uv processes lock resources
- Expand tildes when matching against `PATH`
- Fix `uv init --no-project` alias
- Ignore pre-release segments when discovering via `requires-python`
- Support inline optional tables in `uv add` and `uv remove`
- Update default `hello.py` to pass `ruff format`
- Avoid stripping root for user path display
- Error when user-provided environments are disjoint with Python
- Retain alphabetical sorting for `pyproject.toml` in `uv add` operations
- Add a link to the multiple index docs in the alternative index guide
- Add docs for inline exclude newer in PEP 723 scripts
- Enumerate available Docker tags
- Omit `[pip]` section from configuration file docs
- Update `project.urls` in `pyproject.toml`
- Add docs for AWS CodeArtifact usage
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](http://docs.astral.sh/uv/concepts/projects/#build-systems) for more details.
- Add first-class support for non-packaged projects
- Add `--app` and `--lib` options to `uv init`
- Use `virtual` source label in lockfile for non-packaged dependencies
- Read hash from URL fragment if `--hashes` are omitted
- Support `{package}@{version}` in `uv tool install`
- Publish additional Docker tags without patch version
- Accept either strings or structs for hosts
- Avoid including non-excluded members in parent workspaces
- Avoid reading stale `.egg-info` from mutable sources
- Avoid writing invalid PEP 723 scripts on `tool.uv.sources`
- Compare virtual members when invalidating lockfile
- Do not require workspace members to sync with `--frozen`
- Implement deserialization for trusted host
- Avoid showing duplicate paths in `uv python list`
- Raise an error for unclosed script tags in PEP 723 scripts
- Add dependabot and renovate documentation page
- Bind to the host to allow connections in FastAPI Docker example
- Fix some broken links
- Update FastAPI guide for virtual projects and use `uv init` to create the `pyproject.toml`
- Update project documentation for the application / library concepts
- Update workspace documentation to remove legacy virtual projects
- Add support for `--allow-insecure-host` (aliased to `--trusted-host`)
- Read requirements from `requires.txt` when available
- Respect `tool.uv.environments` in `pip compile --universal`
- Use relative paths by default in `uv add`
- Improve messages for empty solves and installs
- Avoid reusing state across tool upgrades
- Detect musl and error for musl Python builds
- Ignore `send` errors in installer
- Add development section to Docker guide and reference new example project
- Add docs for `constraint-dependencies` and `override-dependencies`
- Clarify package priority order in pip compatibility guide
- Fix docs for disabling build isolation with `uv sync`
- Improve consistency of directory lookup instructions in Docker
- Improve lockfile concept documentation, add coverage for upgrades
- Shift the order of some of the Docker guide content
- Use `python` to highlight requirements and use more content tabs
- Show `--editable` on the `uv add` CLI
- Add `--refresh` to `tool run` warning for `--with` dependencies
- Allow per dependency build isolation for `setup.py`-based projects
- Avoid un-strict syncing by-default for build isolation
- Respect `--no-build-isolation-package` in `uv sync`
- Respect extras and markers on virtual dev dependencies
- Support PEP 723 scripts in GUI files
- Update lockfile after setting minimum bounds in `uv add`
- Use relative paths for `--find-links` and local registries
- Use separate types to represent raw vs. resolver markers
- Parse wheels `WHEEL` and `METADATA` files as email messages
- Support unquoted hrefs in `--find-links` and other HTML sources
- Don't canonicalize paths to user requirements
- Add FastAPI guide to overview
- Add docs for disabling build isolation with `uv sync`
- Add example of reading script from stdin using echo
- Add tip to use intermediate layers in Docker builds
- Clarify need to include `pyproject.toml` with `--no-install-project`
- Move `WORKDIR` directive in Docker examples
- Remove duplicate `WORKDIR` directive in Docker example
- Add `uv sync --no-install-project` to skip installation of the project
- Add `uv sync --no-install-workspace` to skip installation of all workspace members
- Add `uv sync --no-install-package` to skip installation of specific packages
- Show previous version in self update message
- Add `--no-project` alias for `uv python pin --no-workspace`
- Ignore `.python-version` files in `uv venv` with `--no-config`
- Include virtual environment interpreters in `uv python find`
- Respect `-` as stdin channel for `uv run`
- Revert changes to pyproject.toml when sync fails during `uv add`
- Add `UV_COMPILE_BYTECODE` environment variable
- Set `VIRTUAL_ENV` for `uv run` invocations
- Ignore errors in workspace discovery with `--no-project`
- Add documentation for `uv python find`
- Add uv tool install example in Docker
- Document why we do lower bounds
- Fix to miss string termination in PowerShell commands for shell autocompletion documentation
- Fix incorrect workspace members keyword
- Use proper environment variables for Windows
- Improve caveat in `uvx` note
- Add support for configuring `python-downloads` with `UV_PYTHON_DOWNLOADS`
- Add support for configuring the `python-preference` with `UV_PYTHON_PREFERENCE`
- Deny invalid members in workspace schema
- Stop streaming wheels when `METADATA` is discovered (if range requests aren't supported)
- Remove URI type from JSON Schema
- Fix retrieval of credentials for URLs from cache
- Restore `cache` suffix on Windows cache path
- Treat `.pyw` files as scripts in `uv run` on Windows
- Treat invalid extras as `false` in marker evaluation
- Avoid overwriting symlinks in `pip compile` output
- Add `uv run` hint to the `uvx` guide
- Add a guide for using uv with FastAPI
- Add tip for using `managed = false` to disable project management
- Clarify the `uv tool run`, `uvx`, and `uv run` relationships
- Fix references to `--python-downloads` (it is `--no-python-downloads`)
- Further clarifications to the tools documentation
- Update docs dockerfile (bullseye -> bookworm)
- Update the installation documentation page
- Update pip compatibility pages to mention configuration files support
- Add `uv run` docs for gui scripts
- Add `--with-editable` support to `uv run`
- Respect `.python-version` files and `pyproject.toml` in `uv python find`
- Allow manylinux compatibility override via `_manylinux` module
- Avoid treating `uv add -r` as `--raw-sources`
- Always invoke found interpreter when `uv run python` is used
- Avoid adding extra newline for script with non-empty prelude
- Fix metadata cache instability for lockfile
- Handle Ctrl-C properly in `uvx` invocations
- Ignore workspace discovery errors with `--no-workspace`
- Invalidate `uv.lock` when virtual `dev-dependencies` change
- Make cache robust to removed archives
- Preserve Git username for SSH dependencies
- Respect `--no-build-isolation` in `uv add`
- Respect `.python-version` files in `uv run` outside projects
- Use `sys_executable` for `uv run` invocations
- Use atomic write for `pip compile` output
- Use consistent logic for deserializing short revisions
- Remove the preview default value of `python-preference`
- Update env vars doc about `XDG_*` variables on macOS
This release introduces the uv [project](https://docs.astral.sh/uv/guides/projects/),
[tool](https://docs.astral.sh/uv/guides/tools/),
[script](https://docs.astral.sh/uv/guides/scripts/), and
[python](https://docs.astral.sh/uv/guides/install-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](https://docs.astral.sh/uv/).
This release also stabilizes preview functionality in `uv venv`:
- `uv venv --python ` will [automatically
download](https://docs.astral.sh/uv/concepts/python-versions/#requesting-a-version) 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](https://docs.astral.sh/uv/getting-started/features/) in the documentation for a
comprehensive listing, or read the [blog post](https://astral.sh/blog/uv-unified-python-packaging)
for more context on the new features.
- Migrate to XDG and Linux strategy for macOS directories
- Move concurrency settings to top-level
- Apply system Python filtering to executable name requests
- Remove `--legacy-setup-py` command-line argument
- Stabilize preview features
- Add 32-bit Windows target
- Add support for `python_version in ...` markers
- Allow user to constrain supported lock environments
- Lift requirement that .egg-info filenames must include version
- Change "any of" to "all of" in error messages
- Collapse redundant dependency clauses enumerating available versions
- Collapse unavailable packages in resolver errors
- Fix messages for unavailable packages when range is plural
- Improve resolver error messages when `--offline` is used
- Avoid overwriting dependencies with different markers in `uv add`
- Simplify available package version ranges when the name includes markers or extras
- Simplify version ranges reported for unavailable packages
- Rename `environment-markers` to `resolution-markers`
- Support `uv add -r requirements.txt`
- Hide global options in `uv generate-shell-completion`
- Show generate-shell-completion command in `uv help`
- Special-case reinstalls in environment update summaries
- Add output when `uv add` and `uv remove` update scripts
- Add support for `package@latest` in `tool run`
- Show `python find` output with `-q`
- Warn when `--upgrade` is passed to `tool run`
- Allow customizing the tool install directory with `UV_TOOL_BIN_DIR`
- Use `FxHash` in `uv-auth`
- Avoid panicking when the resolver thread encounters a closed channel
- Respect release-only semantics of `python_full_version` when constructing markers
- Tolerate missing `[project]` table in `uv venv`
- Avoid using workspace `lock_path` as relative root
- Preview changes are now included in the standard changelog
- Document dynamic metadata behavior for cache
- Document the effect of ordering on package priority
- Make some edits to the workspace concept documentation
- Update environment variables doc
- Disable collapsible navigation in the documentation
- Document `uv add` and `uv remove` behavior with markers
- Document the Python installation directory
- Document the `uv.pip` section semantics
- Document the cache directory
- Document the tools directory
- Document yanked packages caveat during sync
- Link to persistent configuration options in Python versions document
- Link to the projects concept from the dependencies concept
- Improvements to the Docker installation guide
- Increase the size of navigation entries
- Install `ca-certificates` in docker and use pipefail
- Add script support to feature highlights in index
- Show `uv generate-shell-completion` in CLI documentation reference
- Update Docker guide for projects
- Use `uv add --script` in guide
- Show pinned version example on in GitHub Actions integration guide
- Avoid cloning requirement for unchanged markers
- Fix loading of cached metadata for Git distributions with
subdirectories
- Add env var to `--link-mode=copy` warning
- Avoid displaying "failed to download" on build failures for local source
distributions
- Improve display of available package ranges
- Use "your requirements" consistently in resolver error messages
- Add `python-version-file` to GitHub integration documentation
- Always narrow markers by Python version
- Avoid warning for redundant `--no-project`
- Change the definition of `--locked` to require satisfaction check
- Improve debug log for interpreter requests during project
commands
- Improve display of resolution errors for workspace member conflicts with optional
dependencies
- Improve resolver error messages for single-project workspaces
- Improve resolver error messages referencing workspace members
- Invalidate `uv.lock` if registry sources are removed
- Propagate fork markers to extras
- Redact Git credentials from `pyproject.toml`
- Redact Git credentials in lockfile
- Remove 'tool' reference on `uv run` CLI
- Remove `same-graph` merging in resolver
- Strip SHA when constructing package source
- Treat Git sources as immutable in lockfile
- Use the proper singular form for workspace member dependencies in resolver
errors
- Use sets rather than vectors for lockfile requirements
- Normalize `python_version` markers to `python_full_version`
- Update Pythons to include Python 3.12.5
- Use consistent canonicalization for URLs
- Improve warning message when parsing `pyproject.toml` fails
- Improve handling of overlapping markers in universal resolver
- Add resolver error context to `run` and `tool run`
- Avoid replacing executables on no-op upgrades
- Colocate Python install cache with destination directory
- Filter mixed sources from `--find-links` entries in lockfile
- Fix some outdated documentation discussing Python environments
- Fix projects guide typo
- Fix tools guide typo
- Hide python options in `uv tool list` help
- Improve top-level help for `uv tool` commands
- Move help documentation into dedicated page
- Remove `editable: false` support
- Remove uses of `Option` in `ResolutionGraph`
- Resolve relative `tool.uv.sources` relative to containing project
- Support PEP 723 scripts in `uv add` and `uv remove`
- Support `tool.uv` in PEP 723 scripts
- Treat local indexes as registry sources in lockfile
- Use simplified paths in lockfile
- Use upgrade-specific output for tool upgrade
- Deprecate `--system` and `--no-system` in `uv venv`
- Make `--upgrade` imply `--refresh`
- Warn when there are missing bounds on transitive dependencies
with `--resolution-strategy lowest`
- Add support for `no-build-isolation-package`
- Enable LTO optimizations in release builds to reduce binary size
- Prefetch metadata in `--no-deps` mode
- Display portable paths in POSIX virtual environment activation
commands
- Respect subdirectories when locating Git workspaces
- Improve the `uv venv` CLI documentation
- Add CLI flags to reference documentation
- Add `update` alias for `uv tool upgrade`
- Add caveat about pip interface name
- Add hint for long help to `uvx`
- Avoid requires-python warning in virtual-only workspace
- Discard forks when using `--upgrade`
- Document the `tool upgrade` command
- Document virtual environment discovery
- Enable mirror for `python-build-standalone` downloads
- Fix reuse of Git commits in lockfile
- Ignore local configuration in tool commands
- Improve the CLI documentation for `uv add`
- Improve the CLI documentation for `uv remove`
- Improve the `uv lock` CLI documentation
- Improve the `uv python` CLI documentation
- Improve the `uv sync` CLI documentation
- Improve the `uv tree` CLI documentation
- Fix link to tools concept page
- Add `uv tool upgrade` command
- Implement marker trees using algebraic decision diagrams
- Make repeated `uv add` operations simpler
- Move some documents to relevant sections
- Rename `distribution` to `packages` in lockfile
- Respect `--upgrade-package` in tool install
- Respect `--upgrade-package` when resolving from lockfile
- Retain and respect settings in tool upgrades
- Search beyond workspace root when discovering configuration
- Show build and install summaries in `uv run` and `uv tool run`
- Support relative path wheels
- Update the interface for declaring Python download preferences
- Use cached environments for `--with` layers
- Warn when project-specific settings are passed to non-project `uv run`
commands
- Always strip in release mode
- Assume `git+` prefix when URLs end in `.git`
- Support build constraints
- Create help sections for build, install, resolve, and index
- Improve CLI documentation for global options
- Improve `--python` CLI documentation
- Improve display order of top-level commands
- Allow downloading wheels for metadata with `--no-binary`
- Reject `pyproject.toml` in `--config-file`
- Remove double-proxy nodes in error reporting
- Respect pre-release preferences from input files
- Support overlapping local and non-local requirements in forks
- Add "next steps" to some early documentation pages
- Add `--no-build-isolation` to uv lock et al
- Add `--no-sources` to avoid reading from `tool.uv.sources`
- Add `uv add --no-sync` and `uv remove --no-sync`
- Add a guide for publishing packages
- Address some feedback in the tools documentation
- Avoid lingering dev and optional dependencies in `uv tree`
- Avoid mismatch in `--locked` with Git dependencies
- Avoid panic when re-locking with precise commit
- Avoid using already-installed tools on `--upgrade`
or `--reinstall`
- Better workspace documentation
- Collapse policies section into reference
- Don't show deprecated warning in `uvx --isolated`
- Ensure `python`-to-`pythonX.Y` symlink exists in downloaded
Pythons
- Fix CLI reference URLs to subcommands
- Fix some console blocks in the environment doc
- Group resolver options in lockfile
- Improve CLI documentation for `uv tree`
- Improve documentation for `uv init` CLI
- Improvements to the documentation
- Link to the GitHub integration guide from the cache concept
- Make some minor tweaks to the docs
- Omit local segments when adding uv add bounds
- Remove top-level bar from Python installs
- Replace `uv help python` references in CLI documentation with
links
- Respect `.python-version` in `--isolated` runs
- Respect malformed `.dist-info` directories in tool installs
- Reuse existing virtualenvs with `--no-project`
- Rewrite resolver docs
- Show default and possible options in CLI reference documentation
- Skip files when detecting workspace members
- Support empty dependencies in PEP 723 scripts
- Support uv add `--dev` in virtual workspaces
- Update documentation index
- Update resolver reference documentation
- Update the override section with some content from the README
- Update the resolution concept documentation
- Use cache for Python install temporary directories
- Use lockfile directly in `uv tree`
- Use uv installer during build
- Filter `uv tree` to current platform by default
- Redact registry credentials in lockfile
- Show extras and dev dependencies in `uv tree`
- Support `--python-platform` in `uv tree`
- Add help heading for `--no-sources`
- Avoid reusing incompatible distributions across lock and sync
- Fix broken anchor links in docs about dependencies
- Fix the default value of python-preference in
docs/reference/settings.md
- Improve CLI documentation for `uv run`
- Remove some trailing backticks from the docs
- Use `uvx` in docs serve contributing command
- Remove nostrip.patch. Using CARGO_* environmental variables to set build
- Add shell completions for bash, fish, and zsh.
- Add nostrip.patch.
* this solves the issue of already stripped binaries from rpmlint
- Update specfile:
* source now points to python hosted
* use maturin now for builds
* prep to be a rust+python package
- Move to generic python package naming: python-uv
- Update to version 0.2.33:
* Add support for ksh to relocatable virtual environments
* Add help sections for global options
* Move --python and --python-version into the "Python options" help
* Show help specific options (i.e. --no-pager) in uv help
* Update top-level command descriptions
* Remove lingering executables after failed installs
* Switch from heuristic freshness lifetime to hard-coded value
* Don't use equals signs for CLI options with values
- Use upstream github sources in specfile.
- Add zstd as build requirement.
- Update to version 0.2.30. Changelog include since 0.1.47:
* Infer missing `.exe` in Windows Python discovery
* Make `--reinstall` imply `--refresh`
* Add `--no-config` to replace `--isolated`
* Cache metadata for source tree dependencies
* Avoid canonicalizing executables on Windows
* Set standard permissions for temporary files
* Add `--ci` mode to `uv cache prune`
* Display Python installation key for discovered interpreters
* Allow symlinks to files in scripts directory
* Always accept already-installed pre-releases
* Validate successful metadata fetch for direct dependencies
* Add warning to `--link-mode=symlink` documentation
* Output stable ordering to `requirements.txt` in universal mode
* Allow symlinks with `--find-links`
* Add support for variations of `pythonw.exe`
* Stylize `Requires-Python` consistently in CLI output
* Add `--show-version-specifiers` to `tree`
* Avoid always rebuilding dynamic metadata
* Avoid URL parsing when deserializing wheels
* Avoid cache prune failure due to removed interpreter
* Avoid including empty extras in resolution
* If multiple indices contain the same version, use the first index
* Include URLs on graph edges
* Match wheel tags against `Requires-Python` major-minor
* Remove Simple API cache files for alternative indexes in `cache clean`
* Remove extraneous `are` from wheel tag error messages
* Allow conflicting prerelease strategies when forking
* Use tag error rather than requires-python error for ABI filtering
* Add GraalPy support
* Add a `--verify-hashes` hash-checking mode
* Discover all `python3.x` executables in the `PATH`
* Support `--link-mode=symlink`
* Warn about unconstrained direct deps in lowest resolution
* Log origin of version selection
* Key hash policy on version, rather than package
* Make missing project table a tracing warning
* Remove trailing period from user-facing messages
* Make entrypoint writes atomic to avoid overwriting symlinks
* Use `which`-retrieved path directly when spawning pager
* Don't apply irrelevant constraints when validating site-packages
* Respect local versions for all user requirements
* Add `--no-progress` global option to hide all progress animations
* Cache downloaded wheel when range requests aren't supported
* Download wheel to disk when streaming unzip failed with HTTP streaming error
* Filter out invalid wheels based on `requires-python`
* Filter out none ABI wheels with mismatched Python versions
* Lock Git cache on resolve
* Change order of `pip compile` command checks to handle exact argument first
* Document that `--universal` implies `--no-strip-markers`
* Include PyPy-specific executables when creating virtual environments with `uv venv`
* Add a custom error message for `--no-build-isolation` `torch` dependencies
* Improve missing `wheel` error message with `--no-build-isolation`
* Add `--no-pager` option in `help` command
* Unhide `--isolated` global argument
* Warn when unused `pyproject.toml` configuration is detected
* Fall back to streaming wheel when `Content-Length` header is absent
* Fix substring marker expression disjointness checks
* Lock directories to synchronize wheel-install copies
* Normalize out complementary == or != markers
* Retry on permission errors when persisting extracted source distributions to the cache
* Set absolute URLs prior to uploading to PyPI
* Exclude `--upgrade-package` from the `pip compile` header
* Exclude `--upgrade-package` when option and value are passed as a single argument
* Add split to cover marker universe when existing splits are incomplete
* Use correct `pyproject.toml` path in warnings
* Fix `CONTRIBUTING.md` instructions to install multiple Python versions
* Use versioned badges when uploading to PyPI
* Add support for 'any' Python requests
* Allow constraints to be provided in `--upgrade-package`
* Add `manylinux_2_31` to supported `--python-platform`
* Improve marker simplification
* Display short help menu when `--help` is used
* Allow `uv help` global options during `uv help`
* Use paging for `uv help` display when available
* Switch to single threaded async runtime
* Avoid AND-ing multi-term specifiers in marker normalization
* Avoid inferring package name for GitHub Archives
* Retry on connection reset network errors
* Apply extra to overrides and constraints
* Allow `uv` crate to be used as a library
* Update Windows trampoline binaries
* Show user-facing warning when falling back to copy installs
* Initialize all `--prefix` subdirectories
* Respect `requires-python` when prefetching
* Partially revert `Requires-Python` version narrowing
* Add `--exclude-newer` to installer arguments
* Bold durations in CLI messages
* Drop crate description from the `uv` help menu
* Update "about" in help menu
* Add `UV_OVERRIDE` environment variable for `--override`
* Always use release-only comparisons for `requires-python`
* Avoid hangs before exiting CLI
* Preserve verbatim URLs for `--find-links`
* Fix issue where standalone installer failed to due missing `uvx.exe` binary on Windows
* Differentiate `freeze` and `list` help text
* Fix issue where the standalone installer failed due to a missing `uvx` binary
* Indicate when we retried requests during network errors
* Add `--disable-pip-version-check` to compatibility arguments
* Allow `uv pip sync` to clear an environment with opt-in
* Add `--invert` to `uv pip tree`
* Omit `(*)` in `uv pip tree` for empty packages
* Add `--package` to `uv pip tree`
* Fix bug where git cache did not validate commits correctly
* Narrow `requires-python` requirement in resolver forks
* Fix bug when pruning the last package in `uv pip tree`
* Make `--universal` and `--python-platform` mutually exclusive
* Add `--depth` and `--prune` support to `pip tree`
* Handle cycles when propagating markers
* Ignore `py` not found errors during interpreter discovery
* Merge markers when applying constraints
* Retry on spurious failures when caching built wheels
* Sort indexes during graph edge removal
* Treat Python version as a lower bound in `--universal`
* Fix the incorrect handling of markers in `pip tree`
* Improve toolchain and environment missing error messages
* Explicitly mention use of seed packages during `uv venv --seed`
* Avoid enforcing extra-only constraints
* Add a universal resolution mode to `uv pip compile` with `--universal`
* Add support for `--no-strip-markers` in `uv pip compile` output
* Add `--no-dedupe` support to `uv pip tree`
* Enable more precise environment locking with `--prefix`
* Allow local index references in `requirements.txt` files
* Allow non-`file://` paths to serve as `--index-url` values
* Make `.egg-info` filename parsing spec compliant
* Gracefully handle non-existent packages in local indexes
* Read content length from response rather than request
* Read persistent configuration from non-workspace `pyproject.toml`
* Avoid panic for invalid, non-base index URLs
* Skip submodule update for fresh clones
* Use shared client in Git fetch implementation
* Add `--emit-build-options` flag to `uv pip compile` interface
* Add `pythonw` support for gui scripts on Windows
* Add `uv pip tree`
* Adjust the docs for the pip CLI commands
* Fix casing of `--no-compile` alias
* Fix ordering of prefer-system toolchain preference
* Respect index strategy in source distribution builds
* Add documentation for using uv in a Docker image
* Support toolchain requests with platform-tag style Python implementations and version
* Use "Prepared" instead of "Downloaded" in logs
* Treat mismatched directory and file urls as unsatisfied requirements
* Add resolver tracing logs for when we filter requirements
* Allow specific `--only-binary` and `--no-binary` packages to override `:all:`
* Flatten ORs and ANDs in marker construction
* Skip invalid interpreters when searching for requested interpreter executable name
* Display keyring stderr during queries
* Allow discovery of uv binary relative to package root
* Use relative path for `lib64` symlink
* Add uv version to debug output
* Allow `--no-binary` with `uv pip compile`
* Hide `--no-system` from the CLI
* Make `--reinstall`, `--upgrade`, and `--refresh` shared arguments
* Add `UV_EXCLUDE_NEWER` environment variable
* Allow normalization to completely eliminate markers
* Avoid treating direct path archives as always dynamic
* De-duplicate markers during normalization
* Fix incorrect parsing of requested Python version as empty version specifiers
* Suggest correct command to create a virtual environment when encountering externally managed interpreters
* Use consistent order for extra groups in lockfile
* Add `pip-compile` defaults to `PIP_COMPATIBILITY.md`
* Expand on `pip-compile` default differences
* Tweak copy on some command-line arguments
* Move the preview changelog so the GitHub Release shows stable changes
* Add support for local directories with `--index-url`
* Add mTLS support
* Allow version specifiers to be used in Python version requests
* Always install as editable when duplicate dependencies are requested
* Avoid crash with `XDG_CONFIG_HOME=/dev/null`
* Improve handling of missing interpreters during discovery
* Make missing `METADATA` file a recoverable error
* Represent build tag as `u64`
* Document Windows 10 requirement
* Re-add `aarch64-unknown-linux-gnu` binary to release assets
* Accept `file://` URLs for `requirements.txt` et all references
* Add support for `--prefix`
* Add `pyproject.toml` to CLI help
* Drop "registry" prefix from request timeout log
* Allow transitive URLs via recursive extras
* Avoid pre-fetching for unbounded minimum versions
* Avoid showing dev hints for Python requirements
* Include non-standard ports in keyring host queries
* Omit URL dependencies from pre-release hints
* Improve static metadata extraction for Poetry projects
* Document bytecode compilation in pip compatibility guide
* Fix PEP 508 link in preview doc `specifying_dependencies`
* Clarify role of `--system` flag
* Respect existing `.egg-link` files in site packages
* Avoid extra-only filtering for constraints
* Add install link for specific version to README
* Fix `uv venv` handling when `VIRTUAL_ENV` refers to an non-existent environment
* Support `NO_COLOR` and `FORCE_COLOR` environment variables
* Avoid building packages with dynamic versions
* Avoid work-stealing in bytecode compilation
* Avoid dropping `pip sync` requirements with markers
* Bias towards local directories for bare editable requirements
* Preserve fragments when applying verbatim redirects
* Avoid 'are incompatible' for singular bounded versions
* Support PEP 508 requirements for editables
* Discard fragments when parsing unnamed URLs
* Port all Git functionality to use Git CLI
* Use statically linked C runtime on Windows
* Disable concurrent progress bars in Jupyter Notebooks
* Initialize multi-progress state before individual bars
* Add missing `i686` alias for `x86`
* Add missing `ppc64le` alias for `powerpc64le`
* Fix reference to `--python-version` patch behavior
* Avoid race condition in `OnceMap`
* Add support for x86 Windows
* Add support for `prepare_metadata_for_build_editable` hook
* Add concurrent progress bars for downloads
* Update bundled Python URLs and add `"arm"` architecture variant
* Allow `--system` and `--python` to be passed together
* Ignore `libc` on other platforms
* Incorporate build tag into wheel prioritization
* Avoid displaying log for satisfied editables if none are requested
* Improve logging during interpreter discovery
* Improve logging for environment locking
* Improve logging of interpreter implementation
* Remove extra details from interpreter query traces
* Use colon more consistently in error messages
* Add JSON alias for `unsafe-any-match`
* Remove redundant dynamically linked Linux binary again (#3762)"
* Remove `aarch64-unknown-linux-gnu` from list of expected binaries
* Always include package names for Git and HTTPS dependencies
* Fix interpreter cache collisions for relative virtualenv paths
* Ignore unnamed requirements in preferences
* Search for `python3` in unix virtual environments
* Use a cross-platform representation for relative paths in `pip compile`
* Report yanks for cached and resolved packages
* Improve error message when default Python is not found
* Do not treat interpereters discovered via `CONDA_PREFIX` as system interpreters
* Re-added the dynamically-linked Linux binary
* Rewrite Python interpreter discovery
* Add support for requesting `pypy` interpreters by implementation name
* Discover and prefer the parent interpreter when invoked with `python -m uv` [#3736](https://github.com/astral-sh/uv/pull/3736)
* Add PEP 714 support for HTML API client
* Add PEP 714 support for JSON API client
* Write relative paths with unnamed requirement syntax
* Allow relative Python executable paths in Windows trampoline
* Add support for clang and msvc in missing header error
* Allow `--constraint` files in `pip sync`
* Allow `--config-file` to be passed before or after command name
* Make `--offline` a global argument
* Improve performance in complex resolutions by reducing cost of PubGrub package clones
* Evaluate arbitrary markers to `false`
* Improve `DirWithoutEntrypoint` error message
* Improve display of root package in range errors
* Propagate URL errors in verbatim parsing
* Report yanked packages in `--dry-run`
* Drop native `manylinux` wheel in favor of dual-tagged wheel
* The `python-patch` test feature is no longer on by default and must be manually enabled to test patch version behavior
* Add `--prefix` link to compatibility guide
* Add `--only-binary` to compatibility guide
* Add instructions for building and updating `uv-trampolines`
* Add notes for testing on Windows
* Parse and store extras on editable requirements
* Allow local versions in wheel filenames
* Create lib64 symlink for 64-bit, non-macOS, POSIX environments
* Add `UV_CONCURRENT_INSTALLS` variable in favor of `RAYON_NUM_THREADS`
* Add serialization and deserialization for `--find-links`
* Apply combination logic to merge CLI and persistent configuration
* Parallelize resolver
* Reduce sensitivity of unknown option error to discard Python 2 interpreters
* Respect installed packages in `uv run`
* Separate cache construction from initialization
* Add missing `"directory"` branch in source match
* Fix source annotation in pip compile `annotation-style=line` output
* Run cargo update to pull in h2
* URL-decode hashes in HTML fragments
* Always print JSON output with `--format` json
* Add `UV_CONFIG_FILE` environment variable to documentation
* Explicitly mention `--user` in compatibility guide
* Add musl ppc64le support
* Retag musl aarch64 for manylinux2014
* Reverts "Use manylinux: auto to enable `musllinux_1_2` aarch64 builds
The manylinux change appeared to introduce SSL errors when building aarch64 Docker images, e.g.,
> invalid peer certificate: BadSignature
- Initial package.


Soc Virnyl Estela's avatar

uncomfyhalomacro accepted request

openSUSE Build Service is sponsored by