Documentation Index
Fetch the complete documentation index at: https://mintlify.com/astral-sh/uv/llms.txt
Use this file to discover all available pages before exploring further.
uv pip uninstall removes packages from the active Python environment. It is compatible with pip uninstall but offers faster performance.
Usage
# Uninstall a package
uv pip uninstall requests
# Uninstall multiple packages
uv pip uninstall requests flask numpy
# Uninstall from requirements file
uv pip uninstall -r requirements.txt
# Dry run
uv pip uninstall requests --dry-run
Arguments
Names of packages to uninstall.uv pip uninstall requests
uv pip uninstall requests flask numpy
Uninstall packages listed in requirements files.Supported formats:
requirements.txt
.py files with inline metadata
pylock.toml
pyproject.toml, setup.py, setup.cfg
uv pip uninstall -r requirements.txt
uv pip uninstall -r requirements.txt -r dev-requirements.txt
Python Environment
Python interpreter from which to uninstall packages.By default, uninstalls from virtual environment. Use with caution for system Python.uv pip uninstall requests --python 3.11
uv pip uninstall requests --python /path/to/python
Environment: UV_PYTHON
Uninstall from system Python instead of virtual environment.Use with caution in CI environments only. Can modify system Python installation.
uv pip uninstall requests --system
Environment: UV_SYSTEM_PYTHON
Allow uninstallation from externally-managed Python environments.Intended for CI environments. Use with caution.
Environment: UV_BREAK_SYSTEM_PACKAGES
Uninstall packages from a --target directory.uv pip uninstall requests --target ./libs
Uninstall packages from a --prefix directory.uv pip uninstall requests --prefix /opt/myapp
Behavior Options
Show what would be uninstalled without actually removing packages.uv pip uninstall requests --dry-run
Keyring provider for authentication (for remote requirements files): disabled, subprocess.Default: disabledEnvironment: UV_KEYRING_PROVIDER
Examples
Basic Uninstallation
# Uninstall single package
uv pip uninstall requests
# Uninstall multiple packages
uv pip uninstall requests flask sqlalchemy
# Uninstall with confirmation
uv pip uninstall requests --dry-run
uv pip uninstall requests
From Requirements File
# Uninstall all packages in file
uv pip uninstall -r requirements.txt
# Uninstall from multiple files
uv pip uninstall -r requirements.txt -r dev-requirements.txt
# Uninstall from pyproject.toml
uv pip uninstall -r pyproject.toml
Specific Environment
# From specific Python
uv pip uninstall requests --python 3.11
# From system Python (caution!)
uv pip uninstall requests --system
# From target directory
uv pip uninstall requests --target ./libs
Dry Run
# Preview uninstallation
uv pip uninstall requests --dry-run
# Check multiple packages
uv pip uninstall -r requirements.txt --dry-run
Use Cases
Remove Unwanted Packages
# Remove a package no longer needed
uv pip uninstall old-dependency
# Remove multiple packages
uv pip uninstall pkg1 pkg2 pkg3
Clean Development Environment
# Remove development dependencies
uv pip uninstall -r dev-requirements.txt
# Keep production dependencies
uv pip uninstall -r dev-requirements.txt --dry-run # verify first
Fix Broken Installation
# Uninstall and reinstall
uv pip uninstall problematic-package
uv pip install problematic-package
# Or combine
uv pip uninstall problematic-package && uv pip install problematic-package
Downgrade Package
# Uninstall current version
uv pip uninstall numpy
# Install older version
uv pip install "numpy==1.24.0"
Verify Before Uninstall
# Check what depends on package
uv pip show numpy | grep "Required-by:"
# Preview uninstallation
uv pip uninstall numpy --dry-run
# Uninstall if safe
uv pip uninstall numpy
Differences from pip uninstall
uv pip uninstall is largely compatible with pip uninstall:
# pip command
pip uninstall requests
# Equivalent uv command
uv pip uninstall requests
Key Differences
- Performance: uv is faster
- Confirmation: uv does not prompt for confirmation (use
--dry-run first)
- Default behavior: uv requires virtual environment by default
- Dependency handling: Both only remove specified packages, not their dependencies
No Confirmation Prompt
Unlike pip, uv does not ask for confirmation:
# pip asks "Proceed (Y/n)?"
pip uninstall requests
# uv uninstalls immediately
uv pip uninstall requests
# Use --dry-run to preview
uv pip uninstall requests --dry-run
Migration from pip
# Replace in scripts
pip uninstall -y requests # -y to skip confirmation
# becomes
uv pip uninstall requests # no confirmation needed
Handling Dependencies
uv pip uninstall only removes specified packages, not their dependencies:
# Install requests (and its dependencies)
uv pip install requests
# Installs: requests, certifi, charset-normalizer, idna, urllib3
# Uninstall requests
uv pip uninstall requests
# Removes: requests only
# Leaves: certifi, charset-normalizer, idna, urllib3
Remove Package and Dependencies
To remove orphaned dependencies:
# Option 1: Use pip sync with updated requirements
uv pip compile updated-requirements.in -o requirements.txt
uv pip sync requirements.txt # removes extraneous packages
# Option 2: Manually remove unused packages
uv pip list
uv pip uninstall unused-dep1 unused-dep2
# Option 3: Fresh environment
rm -rf .venv
uv venv
uv pip install -r requirements.txt
What Gets Uninstalled
Regular Packages
# Uninstalls package files and metadata
uv pip uninstall requests
# Removes:
# - /path/to/site-packages/requests/
# - /path/to/site-packages/requests-2.31.0.dist-info/
Editable Packages
# Uninstalls editable package reference
uv pip uninstall mypackage
# Removes:
# - Link/egg-info from site-packages
# Source code remains in original location
Scripts and Entry Points
# Uninstalls console scripts
uv pip uninstall black
# Removes:
# - /path/to/bin/black
# - /path/to/bin/blackd
Exit Codes
# Exit code 0: Success
uv pip uninstall requests
echo $? # 0
# Exit code 1: Package not found
uv pip uninstall nonexistent-package
echo $? # 1
# Use in scripts
if uv pip uninstall old-package 2>/dev/null; then
echo "Successfully uninstalled"
else
echo "Package not found or error"
fi
Safety Considerations
Check Dependencies First
# Check what depends on package
uv pip show numpy | grep "Required-by:"
# If other packages depend on it, they may break
uv pip check # after uninstall
Use Dry Run
# Always preview major uninstalls
uv pip uninstall -r requirements.txt --dry-run
# Verify output, then proceed
uv pip uninstall -r requirements.txt
Avoid System Python
# DON'T: Uninstall from system Python
uv pip uninstall requests --system # dangerous!
# DO: Use virtual environments
uv venv
source .venv/bin/activate
uv pip uninstall requests # safe