Deutsch Open-Source Weblog Resources zopyx group Imprint

Python, Zope, Plone — Development and Consulting

What can we do for you?

Your contact
Andreas Jung will assist you. Please call
+49(0)70 71/79 33 76

Or use our Callback service

Trash on PyPI

— abgelegt unter:

Trash on PyPI

(for German readers only :-) )

As an outcome of some planless Tuesday afternoon hacking, I created zopyx.trashfinder.

zopyx.trashfinder is a small script perform some sanity check on packages registered on PyPI.

Sanity means

  • the package has description
  • the package has a summary
  • the package metadata contains either the name of the author or the maintainer
  • the package metadata contains either the email of the author or the maintainer
  • the package releases contain actually files - either directly on PyPI or at least through a valid download_url

I consider those requirements minimal and easy to fulfill for any package maintainer - I stay with my statement that PyPI is the public data toilet of the Python community.

 

Checks on zope.* packages

CRAP: zope.introspector==0.1.1 - description < 40 chars
CRAP: zope.introspector==0.1.1 - no author and no maintainer email given
CRAP: zope.introspector==0.1.1 - no author and no maintainer name given
CRAP: zope.release==3.4.0 - no release files, no valid download_url

 

Checks on plone.* packages

CRAP: plone.controller==1.6 - description < 40 chars
CRAP: plone.controller==1.6 - summary < 10 chars
CRAP: plone.controller==1.6 - no author and no maintainer email given
CRAP: plone.controller==1.6 - no author and no maintainer name given
CRAP: plone.recipe.dzhandle==1.0-beta4 - description < 40 chars
CRAP: plone.recipe.dzhandle==1.0-beta4 - summary < 10 chars
CRAP: plone.recipe.dzhandle==1.0-beta4 - no author and no maintainer email given
CRAP: plone.recipe.dzhandle==1.0-beta4 - no author and no maintainer name given

 

Checks on collective.* packages

CRAP: collective.baseid==1.0rc1 - description < 40 chars
CRAP: collective.baseid==1.0rc1 - summary < 10 chars
CRAP: collective.baseid==1.0rc1 - no author and no maintainer email given
CRAP: collective.baseid==1.0rc1 - no author and no maintainer name given
CRAP: collective.buildout.cluster==0.3 - description < 40 chars
CRAP: collective.buildout.cluster==0.3 - summary < 10 chars
CRAP: collective.buildout.cluster==0.3 - no author and no maintainer email given
CRAP: collective.buildout.cluster==0.3 - no author and no maintainer name given
CRAP: collective.contentrules.mailtolocalrole==0.7 - no author and no maintainer email given
CRAP: collective.contentrules.mailtolocalrole==0.7 - no author and no maintainer name given
CRAP: collective.dtwidget==0.1dev-r59928 - description < 40 chars
CRAP: collective.dtwidget==0.1dev-r59928 - no author and no maintainer email given
CRAP: collective.dtwidget==0.1dev-r59928 - no author and no maintainer name given
CRAP: collective.gallery==0.1 - no release files, no valid download_url
CRAP: collective.gsa==1.0.5dev-r3574 - no release files, no valid download_url
CRAP: collective.js.s3slider==1.0 - no release files, no valid download_url
CRAP: collective.kssinline==0.9.4 - description < 40 chars
CRAP: collective.kssinline==0.9.4 - no author and no maintainer email given
CRAP: collective.kssinline==0.9.4 - no author and no maintainer name given
CRAP: collective.monkeypatcher==1.0b2 - no author and no maintainer email given
CRAP: collective.monkeypatcher==1.0b2 - no author and no maintainer name given
CRAP: collective.portlet.facet==0.1a1 - description < 40 chars
CRAP: collective.portlet.facet==0.1a1 - summary < 10 chars
CRAP: collective.portlet.facet==0.1a1 - no author and no maintainer email given
CRAP: collective.portlet.facet==0.1a1 - no author and no maintainer name given
CRAP: collective.recipe.mxzopeda==0.1 - no author and no maintainer email given
CRAP: collective.recipe.mxzopeda==0.1 - no author and no maintainer name given
CRAP: collective.recipe.patch==0.2.1 - no release files, no valid download_url
CRAP: collective.steps==0.2dev-r80219 - no release files, no valid download_url
CRAP: collective.uuid==1.0rc1 - description < 40 chars
CRAP: collective.uuid==1.0rc1 - summary < 10 chars
CRAP: collective.uuid==1.0rc1 - no author and no maintainer email given
CRAP: collective.uuid==1.0rc1 - no author and no maintainer name given
CRAP: collective.webrichtlijnen==0.2 - no release files, no valid download_url

 

 I can think of other tests performing further quality checks..perhaps an interesting tool for increasing the software and release quality? Not sure - not having too much hope :-)

 

Artikelaktionen

Testimonial

Andreas Jung held a two-day hands-on training and workshop in our company. Due to his large knowledge in Zope we were able to proceed with our project faster and more efficient. He could answer all questions in details or delivered solutions to open problems immediately after the workshop. This laid the foundation for a good cooperation in the future.

Walter Streicher, Project leader, BG-Phoenics, Munich

 
ZOPYX Ltd., Charlottenstr. 37/1, D-72070 Tübingen, Germany
Phone +49(0)70 71/79 33 76, Fax +49(0)70 71/7 93 68 40, Email: info@zopyx.com
Contact form Callback service Print page