[Catalog-sig] Package Quality Measurement for packages on Pypi

Sridhar Ratnakumar sridharr at activestate.com
Thu Nov 19 21:11:01 CET 2009


On Wed, 18 Nov 2009 22:02:31 -0800, Andreas Jung <lists at zopyx.com> wrote:

> Am 19.11.09 00:42, schrieb Robert Kern:
>>
>> Personally, I am entirely uninterested in moving up grades. I am
>> interested in having good, discoverable documentation,
>
> Amen. Any PyPI package release w/o proper metadata and without
> reasonable description/documentation
> is a broken release and should be banned from PyPI. Package quality
> starts with your metadata and
> the willingness of a package maintainer fulfilling certain minimum
> standards.

I agree about metadata (not sure about documentation). Based on what I see  
 from building packages[1] for PyPM, most packages fail due to one of the  
following reasons:

1) Missing PKG-INFO file (the author did not use the `sdist` command).  
Twisted, IMDBPy are some examples.
2) Trying to read a non-existent file from setup.py (eg: author forgot to  
include README.txt in the tarball -- buggy MANIFEST.in?)
3) no setup.py
4) reading stdin in setup.py (so the "setup.py build" runs indefinitely)
5) no downloads URL (no tarballs either)
7) Import itself in setup.py (foo-0.1.tar.gz/setup.py has "import foo" --  
and that in turns imports uninstalled deps)
6) Missing "build dependencies" (many packages try to import  
numpy.distutils/twisted so on)

Other failures usually include missing library dependencies (libxml, for  
instance) or some Python syntax error.

-srid

PS: Now that we have the build infrastructure that periodically (i.e.,  
every day) builds packages from PyPI, I might experiment with measuring  
the core "installability" rating for all packages sometimes during the  
weekend.

***
[1] reports at http://pypm.activestate.com/


More information about the Catalog-SIG mailing list