Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

Test your projects packaging friendlyness

Project description

pyroma

Pyroma rhymes with aroma, and is a product aimed at giving a rating of how well a Python project complies with the best practices of the Python packaging ecosystem, primarily PyPI, pip, Distribute etc, as well as a list of issues that could be improved.

The aim of this is both to help people make a project that is nice and usable, but also to improve the quality of Python third-party software, making it easier and more enjoyable to use the vast array of available modules for Python.

It’s written so that there are a library with methods to call from Python, as well as a script, also called pyroma.

It can be run on a project directory before making a release:

$ pyroma .

On a distribution before uploading it to the CheeseShop:

$ pyroma pyroma-1.0.tar.gz

Or you can give it a package name on CheeseShop:

$ pyroma pyroma

In all cases the output is similar:

------------------------------
Checking .
Found pyroma
------------------------------
Did you forget to declare the following dependencies?: setup
------------------------------
Final rating: 9/10
Cottage Cheese
------------------------------

TODO

  • Figure out why the long_description doesn’t render to HTML properly.
  • Add a test for that.
  • Figure out how to stop ast from failing on perfectly valid code.
  • Discuss whether to check for missing imports at all, since so many packages seem to break this.
  • More verification tests?
  • More unit tests! Many more unit tests!!! And mock PyPI instead of using it.

Credits

The project was created by Lennart Regebro, regebro@gmail.com The name “Pyroma” was coined by Wichert Akkerman, wichert@wiggy.net

Changelog

0.9.3 (2011-03-17)

  • It’s now using a ProxyStub for the PyPI xmlrpclib during tests.
  • Removed the Dependency rating.
  • Added a rating that runs tests, to see if they run. This will also take care of checking for dependencies.

0.9.2 (2011-03-13)

  • Commented out the dependency test, it was too unreliable.
  • Fixed the ReST.
  • Python 3 support.

0.9.1 (2011-03-08)

  • Initial release

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
pyroma-0.9.3.tar.gz (338.9 kB) Copy SHA256 hash SHA256 Source None Mar 17, 2011

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page