Issue22

Title wish: more expressive requirements
Priority wish Status chatting
Superseder Nosy List zooko
Assigned To Keywords

Created on 2008-06-04.16:56:46 by zooko, last changed 2008-06-04.17:01:21 by zooko.

Messages
msg40 (view) Author: zooko Date: 2008-06-04.17:01:20
Here is the ticket to track this issue in foolscap:

http://foolscap.lothar.com/trac/ticket/66 (install requires pyOpenSSL (for
secure mode))
msg39 (view) Author: zooko Date: 2008-06-04.16:56:45
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.
History
Date User Action Args
2008-06-04 17:01:21zookosetstatus: unread -> chatting
messages: + msg40
2008-06-04 16:56:46zookocreate