Skip to main content

Tool to produce better formatted pip freeze.

Project description

Pip Freeze

Tool to produce better formatted pip freeze.

Instead of a flat list of requirements, this indents requirements which are dependencies and those that are primary installs. Dependencies shared by multiple packages are commented out.

This format can be re-read by the typical pip install -r requirements.txt and requires not adjustment to other code.

Installation

pip install pipfreeze

Basic Usage

pipfreeze > requirements.txt

Motivation

Typical pip freeze flattens all requirements, regardless of the dependency structure.

cycler==0.10.0
kiwisolver==1.3.1
matplotlib==3.3.4
numpy==1.20.1
pandas==1.2.2
Pillow==8.1.0
pyparsing==2.4.7
python-dateutil==2.8.1
pytz==2021.1
six==1.15.0

This pipfreeze command produces output that is valid requirements.txt but is nested

matplotlib==3.3.4
    cycler==0.10.0
        six==1.15.0
    kiwisolver==1.3.1
    numpy==1.20.1
    Pillow==8.1.0
    pyparsing==2.4.7
    python-dateutil==2.8.1
        # six==1.15.0
pandas==1.2.2
    # numpy==1.20.1
    # python-dateutil==2.8.1
        # six==1.15.0
    pytz==2021.1

Contributing

Local development is controlled through docker. docker-compose.yml contains different python environment containers to test this code out in.

make test will run the docker tests.

Makefile contains commands for development.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pipfreeze-2.0.3.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

pipfreeze-2.0.3-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file pipfreeze-2.0.3.tar.gz.

File metadata

  • Download URL: pipfreeze-2.0.3.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.8.5

File hashes

Hashes for pipfreeze-2.0.3.tar.gz
Algorithm Hash digest
SHA256 5f9512751d6c1446faae165bef22c2d523736d8105ac2e7d81cf7bb61fcb4a76
MD5 13c63ea079eabcc1c02b8e3e974c201d
BLAKE2b-256 467852486627790cf615e8247d6ff2c95b4c93d7333d277d389a06f67dea3979

See more details on using hashes here.

File details

Details for the file pipfreeze-2.0.3-py3-none-any.whl.

File metadata

  • Download URL: pipfreeze-2.0.3-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.8.5

File hashes

Hashes for pipfreeze-2.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 63c2587490f762fa12bc4e4734af3e384759468a5660a4a049843d7889d28366
MD5 0bb5f3918345742b22dd63c7686c4cfc
BLAKE2b-256 fb91a5b3052d169ac91dc76fa99633b84495b9ff3c5e9df1eab52febc75c6ea0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page