[Catalog-sig] "python 2 only" classifier

Chris McDonough chrism at plope.com
Mon Dec 12 08:28:13 CET 2011

On Sun, 2011-12-11 at 23:36 +0100, "Martin v. Löwis" wrote:
> > It'd be useful to have a Trove classifier that signified "the authors
> > have no current intention to port this code to Python 3". 
> That classifier already exists: "Programming Language :: Python :: 2"
> indicates support for Python 2, and absence of "Programming Language ::
> Python :: 3" then indicates that this version lacks Python 3 support.
> I don't think classifiers should be used to indicate some intention of
> package authors, in particular since the intention may change, but
> past releases will not.

Thanks to Richard for adding the classifier.

Point taken about past releases; lots of packages on PyPI have already
seen their last release.

But if the current party line in python-dev that goes something like "if
you don't want to port to Python 3, you don't have to" is to be
credible, then ongoing maintainers who choose not to port to Python 3
should not be subject to pressure exhibited by sites like the "wall of
shame".  Being able to express the no-port intent explicitly relieves
the stupidest of those pressures.

I'm sympathetic to the opinion "the wall of shame should not make a
difference".  But we have a PR problem, because the wall of shame is
linked endlessly from comments about Python 3 stores in every news
aggregator (Reddit, Hacker News, etc).  People tend to use it as a stick
to beat the helpless with.

> If you think that this is still different from what you are asking:
> What specific packages would be tagged with that classifier (I need
> two at least), and did that package authors agree to add the classifier
> to their package if it was available? Which specific classifier do you
> propose to add?

The ones that I have some direct responsibility for are:

- Supervisor
- meld3

The ones that I am one step removed from and can venture a very educated
guess about because I participate on the related maillists and
occasionally contribute are:

- Routes
- Pylons
- zdaemon
- ZConfig
- most zope.* packages that aren't already py3 compat
- The Zope2 package
- The Plone package
- The Acquisition package (Zope-related)
- most zc.* packages
- all five.* packages (Zope-related)
- all plone.* packages
- borg.localrole (Plone)
- all archetypes.* packages (Plone)
- all kss.* packages (Plone)
- all Products.* packages (Zope2 products)
- RestrictedPython

All of these packages have > 90K downloads and are featured prominently
on the wall of shame (they actually form a large portion of the
"unported" stuff; 65 packages or so out of about 120).  To the extent
that the above packages will see any new release, I suspect their
maintainers would be happy to mark them "Python 2 only".

- C

More information about the Catalog-SIG mailing list