Skip to main content

A fantastic tool to generate requirements for your Python project, and more than that.

Project description

https://img.shields.io/travis/damnever/pigar.svg?style=flat-square https://img.shields.io/pypi/v/pigar.svg?style=flat-square

Features

  • Generate requirements for project, pigar can consider all kinds of complicated situations. In this project, py2_requirements.txt and py3_requirements.txt for different python versions

    # Generate requirements.txt for current directory.
    $ pigar
    
    # Generate requirements for given directory in given file.
    $ pigar -p ../dev-requirements.txt -P ../

    pigar will list all files which referenced the package, for example:

    # project/foo.py: 2,3
    # project/bar/baz.py: 2,7,8,9
    foobar == 3.3.3

    If requirements file is overwritten over, pigar will show difference between old and new.

  • If you do not know the import name that belongs to a specific package (more generally, does Import Error: xxx drive you crazy?), such as bs4 which may come from beautifulsoup4 or MySQLdb which could come from MySQL_Python, try searching for it:

    $ pigar -s bs4 MySQLdb
  • To check requirements for the latest version, just do:

    # Specific a requirements file.
    $ pigar -c ./requirements.txt
    
    # Or, you can leave pigar search *requirements.txt in current directory
    # level by itself, if not found, pigar will generate requirements.txt
    # for current project then check latest version.
    $ pigar -c

More

You can find more information on GitHub .

Change Logs

TO-DO

Version 0.6.10 (2016.06.17)

  • Fixed #26

  • Fixed relative import issue.

Version 0.6.9 (2016.05.08)

  • Fixed ImportError.

Version 0.6.8 (2016.05.08)

  • Supported flask extension.

  • Sorted requirements.

  • Use gevent if possible.

Version 0.6.7 (2015.12.13)

  • If modules in the try...except... block, assume they are optional.

Version 0.6.6 (2015.11.22)

  • Fixed IndexError.

Version 0.6.5 (2015.11.22)

  • Fixed AttributeError.

  • Fixed PEP8 warning.

Version 0.6.4 (2015.11.22)

  • Removed useless code.

  • Cache modules, to avoid duplication of inspection.

Thank @spacewander for the following contributions:

  • Fixed error for Python 2.7.6.

  • Fixed error when using ‘./xxx’ as relative path.

  • Support importlib.import_module and __import__.

Version 0.6.3 (2015.11.09)

  • Sort files, make comments more clearer.

  • Fixed grammar, to make the README clearer. Thank @roryokane and @flyingfisch.

  • Make it work with python -m pigar. Thank @lilydjwg.

  • Fixed the pep8 warnings: #15.

  • Make output more clearer: #12.

  • Fixed UnicodeDecodeError for Python 3.

Version 0.6.2 (2015.11.05)

  • If requirements file is overwritten over, show difference between old and new.

  • Adjust the structure of the code.

Version 0.6.1 (2015.11.03)

  • Fixed typo.

  • Follow symlinks.

Version 0.6.0 (2015.10.30)

  • Enhancement: issue #7, show imported module come from which files.

  • Consider package installed via Git.

  • Add command “-i”, used to ignore a list of directory.

Version 0.5.5 (2015.10.21)

Version 0.5.2-0.5.4 (2015.10.6)

  • Fixed issue #1.

  • Make version compare more effective.

  • Removed useless code.

Version 0.5.1 (2015.10.01)

  • Available in PyPI(https://pypi-hypernode.com/pypi/pigar).

  • Generate requirements for Python project.

  • Can consider different for different Python versions.

  • Search package names by imported names.

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

pigar-0.7.1.tar.gz (3.4 MB view details)

Uploaded Source

Built Distribution

pigar-0.7.1-py2.py3-none-any.whl (3.4 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file pigar-0.7.1.tar.gz.

File metadata

  • Download URL: pigar-0.7.1.tar.gz
  • Upload date:
  • Size: 3.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pigar-0.7.1.tar.gz
Algorithm Hash digest
SHA256 8b2d0cdf8ea13fbe38c00db2a0a8e9222522ccfb57ffe47c1e67aeb7a04195ee
MD5 d4b771045eaa7f3b50288cd539ddd136
BLAKE2b-256 5232afc9f9c2566a70d565a12811ff5b01c1e72622147672ce01b53304051ed6

See more details on using hashes here.

File details

Details for the file pigar-0.7.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pigar-0.7.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 85b2d0bb788107fe8bd8313a82b197e46e33790618153128c971da8c83a766dc
MD5 4ca95110e800ec0e737fe2dcb3e6b5d1
BLAKE2b-256 24ee58429561dd8a6cf3ce819860e0d1ebf2bb72cf30d9e80a0fe6b00efe6930

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