Extremely fast Python package and project manager written in Rust by Astral. Current version is 0.11.2 (Mar 2026). Replaces pip, pip-tools, pipx, poetry, pyenv, virtualenv, and twine in a single tool. Recommended install is the standalone installer or pipx — NOT pip install uv into a project venv. uv is a CLI tool, not a Python library to import.
curl -LsSf https://astral.sh/uv/install.sh | shVerified import paths — ran on the pinned version, not inferred.
uv init creates pyproject.toml. uv add writes deps + lockfile. uv run uses the project venv.
Install globally by running "curl -LsSf https://astral.sh/uv/install.sh | sh" directly in your shell, or use "pipx install uv". If executing this from a Python script, use the subprocess module (e.g., subprocess.run(["sh", "-c", "curl -LsSf https://astral.sh/uv/install.sh | sh"])) to run shell commands. Only use pip install uv in CI/Docker where you need a quick install without curl.
For project dependencies: use uv add requests. For quick pip-compatible installs: use uv pip install requests. Never mix them in the same workflow.
In CI: run uv sync first, then uv run. Or use uv run --frozen to prevent environment creation if the lockfile is not satisfied.
If you see TLS certificate errors after upgrading, use UV_NATIVE_TLS=1 environment variable or --native-tls flag to fall back to system TLS.
For one-off use: uvx ruff check . For permanent install: uv tool install ruff then ruff check .
Always commit uv.lock. In CI, use uv sync --frozen to install exactly what's in the lockfile without updating it.
No dependency data recorded yet.