Changelogs » Pyroma

PyUp Safety actively tracks 266,777 Python packages for vulnerabilities and notifies you when to upgrade.



  - Nothing changed yet.


  - Ran flake8 and black on the code, better formatting for generation.
  - Support for PEP 517, setup.cfg-only packages. [Max Tyulin]
  - Adds support for Markdown long_descriptions, if you set
  long_description_content_type to 'text/markdown'
  - Installs Pygments to avoid an error message of you have
  syntax highlighted code in the long_description.


  - Fixed 35: Correctly restore ``sys.argv``.  [maurits]
  - Added back the BusFactor test, the XMLRPC API supports it.
  - 26: Adding a test to check for a development status classifier.
  - 21: Accept the new project_urls distribution data.
  - Now verifies that classifiers are valid, and that the license field
  and license classifiers match.
  - The rating now again reflects if the long_description isn't valid ReST.
  - 38: Recommendations for the License field has changed.


  - Get rid of the tests that rely on HTML scraping, it's too brittle.
  - Update to use instead of
  [Andreas Lutro, Lennart Regebro]
  - Added -n command line option to set the minimum rating needed for pyroma
  to return success, useful in scripts.
  [Scott Colby]


  - Fixed 12: Installation fails with a non-UTF8 locale under Python 3.
  [ericof, 4383, regebro]


  - Check that a classifier specifies the project license. [4383]
  - Dropped support for Python 2.6, 3.3 and 3.4.
  - Fixed a unicode issue [gotcha]
  - Stopped recommending places to keep documentation.


  - Removed the TestSuite rating. I decided it was too close to looking at
  code quality. Pyroma no longer cares if you have tests or not.
  - Fixed 36: PyPI now requires https.


  - 35: Support for PEP-440.


  - Faked the __name__ variable to allow you to have a "if __name__" construct
  in the


  - Fixed a bug under Python 3 with certain imports.


  - Stable release.


  - Made it run under Python 3 again.
  - PEP8


  - Big rewrite of how data is extracted from Distutils/Setuptools.


  - Issue 26: Checking a PyPI package could fail under Python 3.


  - Do not complain that the version number should be a string, when it
  is a basestring.


  - This is what happens when you don't run the tests after merging.


  - More robust rating. [Jeff Quast]
  - Closed 24.


  - Package name lookup is now case insensitive. [Dmitry Vakhrushev]
  - Fixed yet another error in return value. [Dmitry Vakhrushev]


  - Fixed issue 17: Integration with zest.releaser stopped working.
  - Fixed issue 18: Pyroma returns the rating as an exit code, this was a
  mistake. It now returns 0 on success, 1 on incorrect options and 2 if
  the rating is below 8.
  - Fixed issue 19: Implementing a custom test class counts as having tests.
  - 8: Philadelphia is now considered a "success" based on practical experience.


  - Fixed issue 13: Pyroma would fail if there was no description.
  - Dropping support for Python 3.1. It still works, but it is unsupported.
  - Added support for command line options, implementing 14 and 15.


  - Issue 13: Pyroma would fail when checking a package name if no source
  distribution could be found.
  - Added a check that the package has a source distribution on PyPI.


  - Issue 11: pyroma would fail if long_description was a non-string.
  - zest.releaser now only runs Pyroma on Python packages.
  - Because packages that use external test-runners can not get more
  that 9/10, this value is now also seen as acceptable when running
  Pyroma through zest.releaser.


  - Added a test to make sure the version number is a string.
  - Made sure errors were printed also when a fatal error was encountered.
  - Better log messages.
  - The zest.releaser hook is now done before tagging, as it's more useful there.
  Especially in conjunction with check-manifest.
  - Having no long_description no longer causes pyroma to fail.


  - 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 or
  - Adds a hook for zest.releaser, so it can be run after doing the checkout,
  before uploading to PyPI.


  - Better handling if there is no package data, for example if doesn't
  call setup() unless you run it as the "__main__" script.
  - If doesn't call setup() look for a main() script and try to run it.


  - Support for Python 3.3
  - Added test for PEP 386 compliance.


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


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


  - Initial release