[Catalog-sig] PyPI enhancement wish items?
Phillip J. Eby
pje at telecommunity.com
Thu Apr 20 18:49:14 CEST 2006
At 07:35 PM 4/20/2006 +1000, Richard Jones wrote:
>Please fire away. I may have some time to work on this in the near future.
>Current stuff I know about:
>- PEP for metadata 1.2
> (though this is not finished nor has it been commented on)
I think that PEP needs to go back to the drawing board; it emphasizes too
much the syntax of fields, while leaving their semantics entirely
void. For example, it dictates what format projects may specify version
numbers in, using a scheme that's too strict for even Python itself to
comply with. But then it leaves the meaning of requirements to be
community-defined. There's little point in having machine-readable data
with no machine-comprehensible semantics. That is, why make people force
fit stuff into a form that machines will never use anyway?
>- auto-generate download_urls for package uploads
This seems unnecessary to me, since easy_install reads the upload links
just fine where they are, but of course I'm biased. :)
>- command-line tool to query pypi and fetch entries (is this necessary
> given easy_install?)
A stable, documented interface to perform the operations that easy_install
does now via screen-scraping and URL interpretation would be useful.
The other things I'd add to the list are (decreasing priority):
1) the ability to treat project names and versions as case-insensitive,
while removing extraneous characters (as in pkg_resources.safe_name()) for
purposes both of searching and determining name uniqueness when registering.
2) Compute "cheesecake" scores for modified entries (using only the metrics
that don't actually run any of the package's code, of course) and display
them prominently. :)
3) Provide better explanation as to what to put in the fields: encourage
people distributing via Sourceforge to put their showfiles.php URL in as
the download URL, or any other page that has actual clickable links to
4) More strongly encourage people to use "setup.py register", by having the
web interface generate a setup.py containing the information they filled
in, and suggesting that they use it, while making it hard to find the
button that will go ahead and put the data in from the web. This can be
billed as a new convenience feature to automatically generate a setup.py
and help people improve their cheesecake scores. ;-)
More information about the Catalog-sig