Skip to main content

Pip Tree

Get the dependency tree of your Python virtual environment via Pip.

Build Status Coverage Status PyPi Licence

Showcase

There is no simple, native way to get the dependency tree of a Python virtual environment using the Pip package manager for Python. Pip Tree fixes this problem by retrieving every package from your virtual environment and returning a list of JSON objects that include the package name, version installed, date updated, and which packages are required by each package (the tree).

Install

# Homebrew install
brew tap justintime50/formulas
brew install pip-tree

# Install Pip Tree globally
pip3 install pip-tree

# Install Pip Tree into the virtual environment of the project you want to run it on
venv/bin/pip install pip-tree

# Install locally
just install

Usage

Virtual Env Usage:
    pip-tree

Global Usage:
    pip-tree --path "path/to/my_project/venv/lib/python3.9/site-packages"

Options:
    -h, --help            show this help message and exit
    -p PATH, --path PATH  The path to the site-packages directory of a Python virtual environment. If a path is not provided, the virtual environment Pip Tree is run from will be used.
    --version             show program's version number and exit

Sample Output

Generating Pip Tree Report...

[
    {
        "name": "docopt",
        "version": "0.6.2",
        "updated": "2021-05-12",
        "requires": [],
        "required_by": [
            "coveralls"
        ]
    },
    {
        "name": "flake8",
        "version": "3.9.2",
        "updated": "2021-05-12",
        "requires": [
            "mccabe<0.7.0,>=0.6.0",
            "pyflakes<2.4.0,>=2.3.0",
            "pycodestyle<2.8.0,>=2.7.0"
        ],
        "required_by": []
    },
    {
        "name": "Flask",
        "version": "2.0.0",
        "updated": "2021-05-12",
        "requires": [
            "click>=7.1.2",
            "itsdangerous>=2.0",
            "Jinja2>=3.0"
            "Werkzeug>=2.0",
        ],
        "required_by": []
    }
]

Pip Tree report complete! 40 dependencies found for "path/to/my_project/venv/lib/python3.12/site-packages".

Package

In addition to the CLI tool, you can use functions to retrieve the list of packages and their details from a Python virtual environment in your own code:

import pip_tree

path = 'path/to/my_project/venv/lib/python3.12/site-packages'

package_list = pip_tree.get_pip_package_list(path)
for package in package_list:
    package_details = pip_tree.get_package_details(package)
    print(package_details['name'])

Development

# Get a comprehensive list of development tools
just --list

Metadata

Release files for pip-tree 5.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pip-tree 5.0.0
File Size Uploaded
pip_tree-5.0.0.tar.gz 6.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pip-tree 5.0.0
File Interpreter ABI Platform
pip_tree-5.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 13.4 kB

Release files / pip_tree-5.0.0.tar.gz

Download URL pip_tree-5.0.0.tar.gz
Size 6.2 kB
Tags Source
SHA-256 checksum
How to use checksums
12924e23b000db48d48ca5772c26c1e39f00f7ce507b202a0b05724caee687e2
BLAKE2b-256 checksum
How to use checksums
52f88475f773f06ee979ff17165b386c4127c01644e4f95b0f950db4dd29ef80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pip_tree-5.0.0-py3-none-any.whl

Download URL pip_tree-5.0.0-py3-none-any.whl
Size 7.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d9a5b97d5944cb04d65f9f71d0d1cf2d6c1b9a7cdfda0a11afbf40328270d8d2
BLAKE2b-256 checksum
How to use checksums
d5b3780aca26a6e9aaea7bd80e7c179c2c138c0f118191e3f030c646ce8cb080
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

5.0.0 This release

2 release files

4.0.0

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.1.0

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.5.0

1 release file

0.4.0

1 release file

0.3.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page