Skip to main content

Test your project's packaging friendliness

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
------------------------------

Credits

The project was created by Lennart Regebro, regebro@gmail.com

The name “Pyroma” was coined by Wichert Akkerman, wichert@wiggy.net

Changelog

1.2 (2013-03-06)

  • Removed the running of tests. I always found it a bit iffy, and getting rid of it solved a lot of issues. Pyroma is now focused solely on packaging quality.

  • A package on PyPI with several versions will no longer return an error.

  • Now looks for documentation on pythonhosted.org or readthedocs.org.

  • Adds a hook for zest.releaser, so it can be run after doing the checkout, before uploading to PyPI.

1.1 (2013-03-05)

  • Better handling if there is no package data, for example if setup.py doesn’t call setup() unless you run it as the “__main__” script.

  • If setup.py doesn’t call setup() look for a main() script and try to run it.

1.0 (2013-03-05)

  • Support for Python 3.3

  • Added test for PEP 386 compliance.

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

Uploaded Source

File details

Details for the file pyroma-1.2.tar.gz.

File metadata

  • Download URL: pyroma-1.2.tar.gz
  • Upload date:
  • Size: 42.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyroma-1.2.tar.gz
Algorithm Hash digest
SHA256 dc41b5ac2bf3666b82c1182a4ca203ca55489d3bfc813dac2df645b79ed49710
MD5 f9b6ce416ac72dc4ea0b9bc7698516c4
BLAKE2b-256 267d0a5326e57160608f0bd380c5e5b507b1dbce86d79051b413d316d75d4ecb

See more details on using hashes here.

Supported by

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