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
asciitree==0.3.1
autopep8==1.2.4
beautifulsoup4==4.4.0
bleach==1.4.1
cookiecutter==1.4.0
coverage==3.7.1
django-argonauts==1.0.1
...

Or, if you want it without version numbers:

$ pip-chill --no-version
asciitree
autopep8
beautifulsoup4
bleach
cookiecutter
coverage
django-argonauts
...

Or, if you want to list package dependencies too:

$ pip-chill -v
asciitree==0.3.1
autopep8==1.2.4
beautifulsoup4==4.4.0
bleach==1.4.1
cookiecutter==1.4.0
coverage==3.7.1
django-argonauts==1.0.1
# arrow==0.10.0 # Installed as dependency for jinja2-time
# binaryornot==0.4.4 # Installed as dependency for cookiecutter
# chardet==3.0.4 # Installed as dependency for binaryornot
# click==6.7 # Installed as dependency for cookiecutter
# django==1.11.5 # Installed as dependency for django-argonauts
# future==0.16.0 # Installed as dependency for cookiecutter
# html5lib==0.999999999 # Installed as dependency for bleach
# jinja2==2.9.6 # Installed as dependency for jinja2-time, cookiecutter
# jinja2-time==0.2.0 # Installed as dependency for cookiecutter
# markupsafe==1.0 # Installed as dependency for jinja2
# pep8==1.7.0 # Installed as dependency for autopep8
# poyo==0.4.1 # Installed as dependency for cookiecutter
# python-dateutil==2.6.1 # Installed as dependency for arrow
# pytz==2017.2 # Installed as dependency for django
# six==1.11.0 # Installed as dependency for python-dateutil, html5lib, bleach
# webencodings==0.5.1 # Installed as dependency for html5lib
# whichcraft==0.4.1 # Installed as dependency for cookiecutter
...

Credits

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

History

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.1.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pip_chill-1.0.1-py2.py3-none-any.whl (6.8 kB view details)

Uploaded Python 2Python 3

File details

Details for the file pip-chill-1.0.1.tar.gz.

File metadata

  • Download URL: pip-chill-1.0.1.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6

File hashes

Hashes for pip-chill-1.0.1.tar.gz
Algorithm Hash digest
SHA256 5d76ac1b1ddf87efd291268cbeda94d3d4c053dc7de00ea0c7f03fe34ca557bb
MD5 822fc7894aa8c182601e7409d33396c7
BLAKE2b-256 250d09d5bf3fb60e7309ad71f1ec8281c467afffd0ca5bf69e1b978a0be67265

See more details on using hashes here.

File details

Details for the file pip_chill-1.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: pip_chill-1.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6

File hashes

Hashes for pip_chill-1.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 90d9b86c7fc8b8a12fe89c497ed84f76d48a5f54f2b509f663837ffbb7c2bc46
MD5 d619460c6846e95a4415b316b26aa0eb
BLAKE2b-256 1e5519077d81b4c224b1456345bf95124914e97d1942e7e6ff8c25d04fc01430

See more details on using hashes here.

Supported by

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