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 show displays detailed information about one or more installed packages, including version, location, dependencies, and metadata.
Usage
# Show package information
uv pip show requests
# Show multiple packages
uv pip show requests flask numpy
# Show with file list
uv pip show requests --files
Arguments
Names of packages to display information about.uv pip show requests
uv pip show requests flask numpy
Display Options
Show the full list of installed files for each package.uv pip show requests --files
Python Environment
Python interpreter to search for packages.By default, searches in virtual environment or system Python if no venv is found.uv pip show requests --python 3.11
uv pip show requests --python /path/to/python
Environment: UV_PYTHON
Show packages from system Python, ignoring virtual environments.uv pip show requests --system
Environment: UV_SYSTEM_PYTHON
Show packages from a --target directory.uv pip show requests --target ./libs
Show packages from a --prefix directory.uv pip show requests --prefix /opt/myapp
Validation
Validate the environment, detecting packages with missing dependencies.uv pip show requests --strict
Name: requests
Version: 2.31.0
Summary: Python HTTP for Humans.
Home-page: https://requests.readthedocs.io
Author: Kenneth Reitz
Author-email: me@kennethreitz.org
License: Apache 2.0
Location: /Users/user/.venv/lib/python3.11/site-packages
Requires: certifi, charset-normalizer, idna, urllib3
Required-by: flask, httpx
With Files
With --files, also shows installed files:
Name: requests
Version: 2.31.0
...
Files:
requests/__init__.py
requests/adapters.py
requests/api.py
...
requests-2.31.0.dist-info/METADATA
requests-2.31.0.dist-info/RECORD
requests-2.31.0.dist-info/WHEEL
Multiple Packages
When showing multiple packages, they’re separated by ---:
Name: requests
Version: 2.31.0
...
---
Name: flask
Version: 3.0.0
...
Displayed Fields
- Name: Package name
- Version: Installed version
- Summary: Short description
- Home-page: Project website
- Author: Package author
- Author-email: Author contact
- License: License type
- Location: Installation directory
Dependencies
- Requires: Direct dependencies
- Required-by: Packages that depend on this package
Installation Info
- Installer: Tool used to install (typically
uv)
- Editable project location: For editable installs
Examples
Basic Usage
# Show single package
uv pip show requests
# Show multiple packages
uv pip show requests flask numpy
# Show all fields
uv pip show requests --files
Check Dependencies
# See what a package requires
uv pip show requests | grep "Requires:"
# See what depends on a package
uv pip show requests | grep "Required-by:"
Find Package Location
# Get installation directory
uv pip show requests | grep "Location:"
# Or use grep to extract just the path
uv pip show requests | grep "Location:" | cut -d' ' -f2
Inspect Files
# Show all installed files
uv pip show requests --files
# Count installed files
uv pip show requests --files | grep -c "^"
# Find specific file
uv pip show requests --files | grep __init__.py
Specific Environment
# From specific Python
uv pip show requests --python 3.11
# From system Python
uv pip show requests --system
# From target directory
uv pip show requests --target ./libs
Script Usage
# Check if package is installed
if uv pip show requests > /dev/null 2>&1; then
echo "requests is installed"
fi
# Get version
VERSION=$(uv pip show requests | grep "Version:" | cut -d' ' -f2)
echo "requests version: $VERSION"
# Get location
LOCATION=$(uv pip show requests | grep "Location:" | cut -d' ' -f2)
echo "Installed at: $LOCATION"
Use Cases
Debug Installation Issues
# Check if package is properly installed
uv pip show mypackage --strict
# Verify installation location
uv pip show mypackage | grep Location
# Check dependencies are met
uv pip show mypackage | grep Requires
Find Import Paths
# Get site-packages location
uv pip show requests | grep Location
# Use in Python scripts
LOCATION=$(uv pip show requests | grep Location | cut -d' ' -f2)
PYTHONPATH="$LOCATION:$PYTHONPATH" python script.py
Audit Dependencies
# Check what depends on a package before removing
uv pip show numpy | grep "Required-by:"
# See full dependency chain
uv pip show flask
uv pip show werkzeug # Flask dependency
Verify Editable Installs
# Check if package is editable
uv pip show mypackage | grep "Editable project location"
# Get source location for editable package
uv pip show mypackage | grep "Editable project location" | cut -d' ' -f4-
License Compliance
# Extract licenses for all packages
for pkg in $(uv pip list --format freeze | cut -d'=' -f1); do
echo "$pkg: $(uv pip show $pkg | grep License | cut -d' ' -f2-)"
done
File Inventory
# List all files from a package
uv pip show requests --files | grep -A 9999 "Files:"
# Find package that owns a file
FILE="requests/__init__.py"
for pkg in $(uv pip list --format freeze | cut -d'=' -f1); do
if uv pip show $pkg --files | grep -q "$FILE"; then
echo "$FILE is from $pkg"
fi
done
Differences from pip show
uv pip show is largely compatible with pip show:
# pip command
pip show requests
# Equivalent uv command
uv pip show requests
Key Differences
- Performance: uv is faster
- Output format: Nearly identical to pip
- Validation: uv adds
--strict for dependency checking
- Installer field: Shows
uv instead of pip
Unsupported pip Options
Most pip show options are supported. Notable exceptions:
- Some legacy pip behaviors
Exit Codes
# Exit code 0: All packages found
uv pip show requests
echo $? # 0
# Exit code 1: One or more packages not found
uv pip show nonexistent-package
echo $? # 1
# Use in scripts
if uv pip show mypackage > /dev/null 2>&1; then
echo "Package is installed"
else
echo "Package not found"
fi