# uv 0.8 Release: Automatic Python Installation to PATH

 [!TIP]
> [Check out our guide to upgrading uv](https://pydevtools.com/handbook/how-to/how-to-upgrade-uv.md)

[uv](https://pydevtools.com/handbook/reference/uv.md) 0.8 stabilizes one of the most significant workflow improvements in Python tooling: automatic installation of Python executables to your PATH. This means you can finally install Python versions with `uv python install` and use them system-wide without wrestling with environment activation.

## Global Python Access Without the Hassle

The headline feature addresses a long-standing frustration in Python development. When you run:

```bash
uv python install 3.13
```

uv now automatically places a versioned Python executable (`python3.13`) in a directory on your PATH (like `~/.local/bin`). This creates a seamless bridge between uv’s managed Python installations and your daily development workflow.

Want to make a version the default? Use the `--default` flag to also install `python3` and `python` executables:

```bash
uv python install --default 3.13
```

This approach respects standard conventions like `XDG_BIN_HOME` and can be customized with `UV_PYTHON_BIN_DIR`. You can disable it entirely with `--no-bin` if you prefer the previous behavior.

For step-by-step setup, see [How to add Python to your system path with uv](https://pydevtools.com/handbook/how-to/how-to-add-python-to-your-system-path-with-uv.md).

## Windows Integration Gets First-Class Treatment

On Windows, uv 0.8 now registers installed Python versions with the Windows Registry following [PEP 514](https://peps.python.org/pep-0514/). This enables using uv-managed Python installations through the `py` launcher, creating a more native Windows experience for Python developers.

## Additional Enhancements in uv 0.8

- Improved safety with `uv venv`: Now prompts before removing existing [virtual environments](https://pydevtools.com/handbook/explanation/what-is-a-virtual-environment.md) to prevent accidental deletions
- Stricter Python preference validation: Enforces `--no-managed-python` and related options consistently across discovered interpreters
- Enhanced workspace handling: Dependencies with path sources are now built and installed by default, even without explicit build systems
- Updated Linux platform defaults: `--python-platform linux` now targets `manylinux_2_28` for broader compatibility with modern distributions
- uv build backend becomes default: New projects created with `uv init --package` now use uv’s own [build backend](https://pydevtools.com/handbook/explanation/what-is-a-build-backend.md) instead of [Hatchling](https://pydevtools.com/handbook/reference/hatch.md)
- Better Docker support: Sets sensible `UV_TOOL_BIN_DIR` defaults in Docker images for tool installation
- Workspace subdirectory improvements: `uv add` automatically treats subdirectories as workspace members
- Refined editable dependency handling: Allows different [editable](https://pydevtools.com/handbook/explanation/what-is-an-editable-install.md) settings across dependency groups with proper conflict detection
- Ephemeral environments for `--with`: Creates cleaner isolation for temporary dependencies in `uv run --with` invocations
- Consistent exit codes: Standardizes exit codes across check operations for better CI/CD integration

Most users can upgrade directly to uv 0.8 without workflow changes, though some edge cases around virtual environment management and dependency handling have been tightened for improved correctness.

## Learn More

* [Official release notes](https://github.com/astral-sh/uv/releases/tag/0.8.0)
* [How to upgrade ​​​​​​​​​​​​​​​​uv](https://pydevtools.com/handbook/how-to/how-to-upgrade-uv.md)
* [How to add Python to your system path with uv](https://pydevtools.com/handbook/how-to/how-to-add-python-to-your-system-path-with-uv.md)
* [How to install Python with uv](https://pydevtools.com/handbook/how-to/how-to-install-python-with-uv.md)
