[Distutils] Should metadata known about compatibility?

Hanno Schlichting hannosch at hannosch.eu
Tue Apr 14 21:07:55 CEST 2009


Hi,

I'd like to suggest that distutils metadata should gain a way of
specifying compatibility with packages in addition to the requirement of
packages.

What are the use cases?

- A package wants to express that it works with both Python 2 and 3.
- A package wants to express that it works with TurboGears 2 or Plone 4

>From my point of view this information is most useful for framework-like
packages, when those do major backwards incompatible changes to their
code base.

In those circumstances typical question that people want to have answers
to are:

- For a press release of Python or a Framework, how many packages in
PyPi already support the new version?

- Running a particular application consisting of 200 packages, can I
upgrade to the next version of Framework X?

This type of information would always be optional and won't ever be used
for all packages. I think it could be nonetheless helpful in many
circumstances.

On a side note to express this information for Python itself, it would
be a good idea to expose the Python version in a distutils way, so I
could also write:

install_requires=['Python >= 3.0']

Comments?

Hanno

P.S. We want this kind of behavior for Plone, to give "plugins" to the
application / framework the ability to express this information.



More information about the Distutils-SIG mailing list