Skip to main content

Like `pip freeze` but lists only the packages that are not dependencies of installed packages.

Project description

PIP Chill - Make requirements with only the packages you need

https://img.shields.io/pypi/v/pip-chill.svg https://img.shields.io/travis/rbanffy/pip-chill.svg Documentation Status Updates Codacy Badge

Like pip freeze but lists only the packages that are not dependencies of installed packages.

Features

Generates a requirements file without any packages that depend on other packages in the file.

How it works

Usage

Suppose you have installed in your virtualenv a couple packages. When you run pip freeze, you’ll get a list of all packages installed, with all dependencies. If one of the packages you installed ceases to depend on an already installed package, you have to manually remove it from the list. The list also makes no distinction about the packages you actually care about and packages your packages care about, making the requirements file bloated and, ultimately, inaccurate.

On your terminal, run:

$ pip-chill
bandit==1.7.0
bumpversion==0.6.0
click==7.1.2
coverage==5.3.1
flake8==3.8.4
nose==1.3.7
pip-chill==1.0.1
pytest==6.2.1
...

Or, if you want it without version numbers:

$ pip-chill --no-version
bandit
bumpversion
click
coverage
flake8
nose
pip-chill
pytest
...

Or, if you want it without pip-chill:

$ pip-chill --no-chill
bandit==1.7.0
bumpversion==0.6.0
click==7.1.2
coverage==5.3.1
flake8==3.8.4
nose==1.3.7
pytest==6.2.1
...

Or, if you want to list package dependencies too:

$ pip-chill -v
bandit==1.7.0
bumpversion==0.6.0
click==7.1.2
coverage==5.3.1
flake8==3.8.4
nose==1.3.7
pip-chill==1.0.1
pytest==6.2.1
sphinx==3.4.3
tox==3.21.1
twine==3.3.0
watchdog==1.0.2
# alabaster==0.7.12 # Installed as dependency for sphinx
# appdirs==1.4.4 # Installed as dependency for virtualenv
# attrs==20.3.0 # Installed as dependency for pytest
# babel==2.9.0 # Installed as dependency for sphinx
# bleach==3.2.1 # Installed as dependency for readme-renderer
# bump2version==1.0.1 # Installed as dependency for bumpversion
# certifi==2020.12.5 # Installed as dependency for requests
# chardet==4.0.0 # Installed as dependency for requests
# colorama==0.4.4 # Installed as dependency for twine
# distlib==0.3.1 # Installed as dependency for virtualenv
# docutils==0.16 # Installed as dependency for readme-renderer, sphinx
# filelock==3.0.12 # Installed as dependency for tox, virtualenv
# gitdb==4.0.5 # Installed as dependency for gitpython
...

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

1.0.3 (2023-04-15)

  • Sort dependencies alphabetically in –verbose

  • Use ssort to topologically sort code

  • Update 3.11-dev to 3.11 on TravisCI

  • Remove support for Python 3.5 and 3.6

  • Update README.rst with –no-chill switch

  • Bump version to 1.0.2

1.0.1 (2021-01-18)

  • Add no-chill option so that pip-chill is not shown as installed

  • Do Linux tests on Focal where possible (2.7 and 3.7 on ppc64le and s390x, 2.7 on arm64 run Bionic)

  • Fix wrong URLs in CONTRIBUTING.rst

  • Add 3.7, 3.8, 3.9 to ppc64le and s390x, 3.10-dev to Linux, macOS

  • Rename nightly as 3.10-dev

  • Add explicit amd64 arch to amd64

  • Fix failing flake8 test

  • Bump version to 1.0.1

1.0.0 (2020-02-29)

  • Remove dependency on Click (stay 100% within stdlib)

  • Add 3.8 tests for Tox

  • Add new tests

  • Add arm, ppc64le, and s390x to architectures being tested

  • Bump version to 1.0.0

0.1.9 (2019-07-23)

  • New -a shortcut for –all

  • Internal fixes - use assert methods in tests, improve markdown.

  • Testing improvements (using TravisCI matrix, new base image, etc)

  • Small documentation improvements

0.1.8 (2018-08-20)

  • Fixes, compatibility with Python 2.7, 3.6, 3.7

0.1.7 (2018-01-22)

  • Added a verbose command-line switch (fixed #3)

0.1.6 (2016-11-23)

  • Added pkg-resources to packages not shown by default.

0.1.5 (2016-11-05)

  • Added an –all switch.

  • Do not show wheel and setuptools unless –all is invoked.

0.1.4 (2016-11-05)

  • Better testing, more of the cookiecutter infrastructure enabled.

0.1.3 (2016-10-06)

  • Added a –no-version switch.

0.1.0 (2016-10-03)

  • First release on PyPI.

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

pip-chill-1.0.3.tar.gz (19.5 kB view hashes)

Uploaded Source

Built Distribution

pip_chill-1.0.3-py2.py3-none-any.whl (6.9 kB view hashes)

Uploaded Python 2 Python 3

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