Skip to main content

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.

Source Distribution

pyroma-0.9.3.tar.gz (338.9 kB view hashes)

Uploaded Source

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