Name the software! Package quality tester.
I've started working on a little utility to give a quality rating on packages, expressed in 0-10 points, and also in cheese types, according to smellyness. It's going to check for things like that it has all meta data it should have, such as author_email, specifies Python versions via the trove classifiers (currently works) and that it specifies all dependencies (still todo). It will support both checking on a package (works currently) a distribution file and PyPI (still to do). It's not a uniqe idea, it overlaps with Andreas Jungs zopyx.trashfinder in scope, and it will also in the case of checking a package on PyPI check that there are several people that have owner access, and hence include the functionality of mr.parker. (In fact when checking on PyPI it will also check if there are documentation on packages.python.org, that the distribution files are uploaded to PyPI, etc, but this is all still todo). But I didn't find anything else, and I wanted bigger scopes than both these in what to check in and which cases. But, before I move this to a public repository and upload it to PyPI, there is one important thing to be determined: What should it be called? Currently I'm calling it "pypilib.quality". I don't mind this kind of boring names, but there is currently not a pypilib namespace, and I don't want to just create top level namespaces left and right for no reason. So other names are welcome. It doesn't have to have a namespace either. In the long run I would not mind to see this utility integrated into a general pypi/cheeseshop script with other utility commands, which even could include installing and removing, thusly giving Perl people what they think they want a "CPAN" for Python. :-) -- Lennart Regebro: http://regebro.wordpress.com/ The Python 3 Porting book is out: http://python3porting.com/ +33 661 58 14 64
On Sun, Mar 6, 2011 at 2:38 PM, Benji York <benji@benjiyork.com> wrote:
On Mar 6, 2011 3:47 AM, "Lennart Regebro" <regebro@gmail.com> wrote:
I've started working on a little utility to give a quality rating on packages, expressed in 0-10 points, and also in cheese types, according to smellyness.
How about "cheese inspecter"?
More ideas: cheeseshop.critic pypi.stickler
Excellent idea Lennart... On Mar 06, 2011, at 03:51 PM, Brad Allen wrote:
cheeseshop.critic pypi.stickler
I like the cheeseshop namespace used for this. Or maybe wenslydale :) http://orangecow.org/pythonet/sketches/cheese.htm -Barry
On Sun, Mar 6, 2011 at 9:46 AM, Lennart Regebro <regebro@gmail.com> wrote:
I've started working on a little utility to give a quality rating on packages, expressed in 0-10 points, and also in cheese types, according to smellyness.
It's going to check for things like that it has all meta data it should have, such as author_email, specifies Python versions via the trove classifiers (currently works) and that it specifies all dependencies (still todo). It will support both checking on a package (works currently) a distribution file and PyPI (still to do).
It's not a uniqe idea, it overlaps with Andreas Jungs zopyx.trashfinder in scope, and it will also in the case of checking a package on PyPI check that there are several people that have owner access, and hence include the functionality of mr.parker. (In fact when checking on PyPI it will also check if there are documentation on packages.python.org, that the distribution files are uploaded to PyPI, etc, but this is all still todo). But I didn't find anything else, and I wanted bigger scopes than both these in what to check in and which cases.
Reminds me a bit about "CheeseCake" http://pycheesecake.org/
But, before I move this to a public repository and upload it to PyPI, there is one important thing to be determined: What should it be called? Currently I'm calling it "pypilib.quality". I don't mind this kind of boring names, but there is currently not a pypilib namespace, and I don't want to just create top level namespaces left and right for no reason. So other names are welcome. It doesn't have to have a namespace either.
Camembert ? :D
In the long run I would not mind to see this utility integrated into a general pypi/cheeseshop script with other utility commands, which even could include installing and removing, thusly giving Perl people what they think they want a "CPAN" for Python. :-)
-- Lennart Regebro: http://regebro.wordpress.com/ The Python 3 Porting book is out: http://python3porting.com/ +33 661 58 14 64 _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org http://mail.python.org/mailman/listinfo/distutils-sig
-- Tarek Ziadé | http://ziade.org
On Sun, Mar 6, 2011 at 17:00, Tarek Ziadé <ziade.tarek@gmail.com> wrote:
Reminds me a bit about "CheeseCake" http://pycheesecake.org/
Indeed, it's a lot like CheeseCake, which I had forgot about and didn't find either by google, pypi or asking on #plone and #python. :-) However, there are a significant difference. CheeseCake is focusing a lot on code quality, while I'm only interested in how well it plays with the pypi ecosystem. The percentage of functions with docstrings seems to me to be highly irrelevant, as well. That's more like the percentage of public vs private functions, and not a measure of quality at all. So CheeseCake can take care of code quality, and this will do package quality. :-) //Lennart
The winner is Wichert, with "pyroma". I do like the "stickler" name, and the cheeseshop namespace, but since there is nothing else in that namespace I'll wait with it. It can easily be moved to a "cheeseshop.compliance" or whatever in the future, but that the moment it's "pyroma". I'll check it in somewhere soon, maybe work a bit more on the plane to PyCon and probably mention it in a lightning talk. //Lennart On Sun, Mar 6, 2011 at 09:46, Lennart Regebro <regebro@gmail.com> wrote:
I've started working on a little utility to give a quality rating on packages, expressed in 0-10 points, and also in cheese types, according to smellyness.
It's going to check for things like that it has all meta data it should have, such as author_email, specifies Python versions via the trove classifiers (currently works) and that it specifies all dependencies (still todo). It will support both checking on a package (works currently) a distribution file and PyPI (still to do).
It's not a uniqe idea, it overlaps with Andreas Jungs zopyx.trashfinder in scope, and it will also in the case of checking a package on PyPI check that there are several people that have owner access, and hence include the functionality of mr.parker. (In fact when checking on PyPI it will also check if there are documentation on packages.python.org, that the distribution files are uploaded to PyPI, etc, but this is all still todo). But I didn't find anything else, and I wanted bigger scopes than both these in what to check in and which cases.
But, before I move this to a public repository and upload it to PyPI, there is one important thing to be determined: What should it be called? Currently I'm calling it "pypilib.quality". I don't mind this kind of boring names, but there is currently not a pypilib namespace, and I don't want to just create top level namespaces left and right for no reason. So other names are welcome. It doesn't have to have a namespace either.
In the long run I would not mind to see this utility integrated into a general pypi/cheeseshop script with other utility commands, which even could include installing and removing, thusly giving Perl people what they think they want a "CPAN" for Python. :-)
-- Lennart Regebro: http://regebro.wordpress.com/ The Python 3 Porting book is out: http://python3porting.com/ +33 661 58 14 64
Speaking of names, I would rename PyPI to packages.python.org, maybe move the existing documentation center to docs.python.org, and then move the docs of Python itself to a `/python` folder... But that's just me. On Sun, Mar 6, 2011 at 9:40 PM, Lennart Regebro <regebro@gmail.com> wrote:
The winner is Wichert, with "pyroma".
I do like the "stickler" name, and the cheeseshop namespace, but since there is nothing else in that namespace I'll wait with it. It can easily be moved to a "cheeseshop.compliance" or whatever in the future, but that the moment it's "pyroma". I'll check it in somewhere soon, maybe work a bit more on the plane to PyCon and probably mention it in a lightning talk.
//Lennart
On Sun, Mar 6, 2011 at 09:46, Lennart Regebro <regebro@gmail.com> wrote:
I've started working on a little utility to give a quality rating on packages, expressed in 0-10 points, and also in cheese types, according to smellyness.
It's going to check for things like that it has all meta data it should have, such as author_email, specifies Python versions via the trove classifiers (currently works) and that it specifies all dependencies (still todo). It will support both checking on a package (works currently) a distribution file and PyPI (still to do).
It's not a uniqe idea, it overlaps with Andreas Jungs zopyx.trashfinder in scope, and it will also in the case of checking a package on PyPI check that there are several people that have owner access, and hence include the functionality of mr.parker. (In fact when checking on PyPI it will also check if there are documentation on packages.python.org, that the distribution files are uploaded to PyPI, etc, but this is all still todo). But I didn't find anything else, and I wanted bigger scopes than both these in what to check in and which cases.
But, before I move this to a public repository and upload it to PyPI, there is one important thing to be determined: What should it be called? Currently I'm calling it "pypilib.quality". I don't mind this kind of boring names, but there is currently not a pypilib namespace, and I don't want to just create top level namespaces left and right for no reason. So other names are welcome. It doesn't have to have a namespace either.
In the long run I would not mind to see this utility integrated into a general pypi/cheeseshop script with other utility commands, which even could include installing and removing, thusly giving Perl people what they think they want a "CPAN" for Python. :-)
-- Lennart Regebro: http://regebro.wordpress.com/ The Python 3 Porting book is out: http://python3porting.com/ +33 661 58 14 64
_______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org http://mail.python.org/mailman/listinfo/distutils-sig
-- Sincerely, Ram Rachum
Since mercurial makes me annoyed I decided to use it. I'll have to learn it someday anyway, so why not now? https://bitbucket.org/regebro/pyroma Helpers welcome (although you'll probably have to wait to after PyCon). //Lennart On Sun, Mar 6, 2011 at 20:40, Lennart Regebro <regebro@gmail.com> wrote:
The winner is Wichert, with "pyroma".
I do like the "stickler" name, and the cheeseshop namespace, but since there is nothing else in that namespace I'll wait with it. It can easily be moved to a "cheeseshop.compliance" or whatever in the future, but that the moment it's "pyroma". I'll check it in somewhere soon, maybe work a bit more on the plane to PyCon and probably mention it in a lightning talk.
//Lennart
On Sun, Mar 6, 2011 at 09:46, Lennart Regebro <regebro@gmail.com> wrote:
I've started working on a little utility to give a quality rating on packages, expressed in 0-10 points, and also in cheese types, according to smellyness.
It's going to check for things like that it has all meta data it should have, such as author_email, specifies Python versions via the trove classifiers (currently works) and that it specifies all dependencies (still todo). It will support both checking on a package (works currently) a distribution file and PyPI (still to do).
It's not a uniqe idea, it overlaps with Andreas Jungs zopyx.trashfinder in scope, and it will also in the case of checking a package on PyPI check that there are several people that have owner access, and hence include the functionality of mr.parker. (In fact when checking on PyPI it will also check if there are documentation on packages.python.org, that the distribution files are uploaded to PyPI, etc, but this is all still todo). But I didn't find anything else, and I wanted bigger scopes than both these in what to check in and which cases.
But, before I move this to a public repository and upload it to PyPI, there is one important thing to be determined: What should it be called? Currently I'm calling it "pypilib.quality". I don't mind this kind of boring names, but there is currently not a pypilib namespace, and I don't want to just create top level namespaces left and right for no reason. So other names are welcome. It doesn't have to have a namespace either.
In the long run I would not mind to see this utility integrated into a general pypi/cheeseshop script with other utility commands, which even could include installing and removing, thusly giving Perl people what they think they want a "CPAN" for Python. :-)
-- Lennart Regebro: http://regebro.wordpress.com/ The Python 3 Porting book is out: http://python3porting.com/ +33 661 58 14 64
Lennart Regebro wrote:
But, before I move this to a public repository and upload it to PyPI, there is one important thing to be determined: What should it be called?
Inspector Tiger? http://www.youtube.com/watch?v=UDdCghQYvDY -- Greg
I've started working on a little utility to give a quality rating on packages
Please don’t call those things packages. Let’s try to use “package” only for a directory that you can import from Python, and “distribution” for a bundle/archive of one version of a project. http://tarekziade.wordpress.com/2010/01/07/fixing-packaging-terminology-conf... http://docs.python.org/dev/distutils/introduction#concepts-terminology Regards
On Mon, Mar 7, 2011 at 11:01, Éric Araujo <merwok@netwok.org> wrote:
I've started working on a little utility to give a quality rating on packages
Please don’t call those things packages. Let’s try to use “package” only for a directory that you can import from Python, and “distribution” for a bundle/archive of one version of a project.
http://tarekziade.wordpress.com/2010/01/07/fixing-packaging-terminology-conf... http://docs.python.org/dev/distutils/introduction#concepts-terminology
The problem is that it's not distributions (although it will test them too). It's "Things that has a setup.py" and "what has an entry on PyPI". This is generally called a package, as in Python *Package* Index. I agree this is confusing. But saying that Pyroma tests distributions would also be confusing. :-) If a decision comes to call these "projects", then I'm fine with that, but currently they are called packages. /Lennart
The problem is that it's not distributions (although it will test them too). It's "Things that has a setup.py" and "what has an entry on PyPI".
Okay, so that’s called a project in distutils docs and PEPs (more info on Tarek’s post I linked to, which links to a previous distutils-sig thread). The names of PyPI and packages.python.org are the only parts of our official infrastructure that disagree, if I recall correctly. (It has been suggested to backronym PyPI to Python Projects Index, but this was rejected for reasons I don’t remember.) Of course, people coming from Perl or using an operating system with a concept of “software packages” and “package manager” naturally call the things you can download from PyPI “packages”. People from the BSD and linux world also already have a conflicting use for “distribution”. It’s probably too late to try to call those downloadable things archives, parcels or bundles, and even more too late to rename Python packages “supermodules” or something else to free up the word “package”. My point is that if we have to live with this imperfect situation, we should try to remain consistent as much as possible to prevent confusion (see for example the thread about distribution/release confusion in PEP 345 that was opened *after* the PEP was thoroughly discussed and accepted). Regards
2011/3/7 Éric Araujo <merwok@netwok.org>:
The problem is that it's not distributions (although it will test them too). It's "Things that has a setup.py" and "what has an entry on PyPI".
Okay, so that’s called a project in distutils docs
In distutils2, yes.
My point is that if we have to live with this imperfect situation, we should try to remain consistent as much as possible to prevent confusion
I'll make a note of this in the documentation to clear it up. Distutils2 is definitely in the minority at the moment when it comes to calling them "projects". //Lennart
participants (8)
-
Barry Warsaw -
Benji York -
Brad Allen -
cool-RR -
Greg Ewing -
Lennart Regebro -
Tarek Ziadé -
Éric Araujo