[Distutils] [issue22] wish: more expressive requirements

Zooko O'Whielacronx setuptools at bugs.python.org
Wed Jun 4 18:56:49 CEST 2008

New submission from Zooko O'Whielacronx <zooko at zooko.com>:

There is a bug which manifests itself if you combine Twisted v8.1.0 with
pyOpenSSL v0.7.  It doesn't happen with pyOpenSSL v0.6.  However, the bug is a
bug in Twisted, not in pyOpenSSL.  Future releases of Twisted will probably fix
the bug.  Future releases of pyOpenSSL will probably be unchanged with respect
to this issue.

So the right way for the foolscap project to express its dependency on Twisted
and pyOpenSSL should probably be something like:

(Twisted < 8.2 && pyOpenSSL == 0.6) || (Twisted >= 8.2 && pyOpenSSL >= 0.7)

Since setuptools doesn't currently support expression of such requirements, the
foolscap author is going to write:

['Twisted', 'pyOpenSSL == 0.6']

Thus preventing people from using a newer version of pyOpenSSL with foolscap
until Twisted is fixed, then the author of foolscap learns that Twisted is
fixed, then he changes his requirements to ['Twisted >= $FIXED_VER', 'pyOpenSSL
>= 0.6'], then he releases a new release of foolscap, then people upgrade to it.

So this wishlist item is for setuptools to develop the ability to express
requirements on combinations of packages so that the correct dependency (the
first one listed above) can be expressed.

messages: 39
nosy: zooko
priority: wish
status: unread
title: wish: more expressive requirements

Setuptools tracker <setuptools at bugs.python.org>

More information about the Distutils-SIG mailing list