Update the dependency on zope.interface to fix an incompatiblity between Nevow and zope.interface 3.6.4. fixes #1435

This commit is contained in:
david-sarah
2011-07-21 16:49:41 -07:00
parent 0f83b76190
commit 2ebaa916df
3 changed files with 20 additions and 8 deletions

View File

@ -15,6 +15,9 @@ Release 1.9.0 (2011-??-??)
Compatibility and Dependencies Compatibility and Dependencies
'''''''''''''''''''''''''''''' ''''''''''''''''''''''''''''''
- An incompatibility of zope.interface version 3.6.4 with Nevow has
been resolved. Tahoe-LAFS now requires one of the exact versions
v3.3.1, v3.5.3, or v3.6.1 of zope.interface. (`#1435`_)
- The Twisted dependency has been raised to version 10.1. This ensures - The Twisted dependency has been raised to version 10.1. This ensures
that we no longer require pywin32 on Windows, and that it is never that we no longer require pywin32 on Windows, and that it is never
necessary to patch Twisted in order to use the FTP frontend. necessary to patch Twisted in order to use the FTP frontend.
@ -23,6 +26,7 @@ Compatibility and Dependencies
.. _`#1274`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1274 .. _`#1274`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1274
.. _`#1392`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1392 .. _`#1392`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1392
.. _`#1409`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1409 .. _`#1409`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1409
.. _`#1435`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1435
.. _`#1438`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1438 .. _`#1438`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1438

View File

@ -135,14 +135,20 @@ setup_requires = []
# http://pypi.python.org/pypi/darcsver # http://pypi.python.org/pypi/darcsver
setup_requires.append('darcsver >= 1.7.2') setup_requires.append('darcsver >= 1.7.2')
# Nevow requires Twisted to setup, but prior to Nevow v0.9.33, didn't # Nevow imports itself when building, which causes Twisted and zope.interface
# declare that requirement in a way that enables setuptools to satisfy # to be imported. We need to make sure that the versions of Twisted and
# the requirement before Nevow's setup.py tries to "import twisted". # zope.interface used at build time satisfy Nevow's requirements. If not
# This only matters when Twisted is not already installed. # then there are two problems:
# See http://divmod.org/trac/ticket/2629 # - prior to Nevow v0.9.33, Nevow didn't declare its dependency on Twisted
# Retire this hack when # in a way that enabled setuptools to satisfy that requirement at
# build time.
# - some versions of zope.interface, e.g. v3.6.4, are incompatible with
# Nevow, and we need to avoid those both at build and run-time.
#
# This only matters when compatible versions of Twisted and zope.interface
# are not already installed. Retire this hack when
# https://bugs.launchpad.net/nevow/+bug/812537 has been fixed. # https://bugs.launchpad.net/nevow/+bug/812537 has been fixed.
setup_requires += [req for req in install_requires if req.startswith('Twisted')] setup_requires += [req for req in install_requires if req.startswith('Twisted') or req.startswith('zope.interface')]
# setuptools_darcs is required to produce complete distributions (such # setuptools_darcs is required to produce complete distributions (such
# as with "sdist" or "bdist_egg"), unless there is a # as with "sdist" or "bdist_egg"), unless there is a

View File

@ -14,7 +14,9 @@ install_requires = [
# Feisty has simplejson 1.4 # Feisty has simplejson 1.4
"simplejson >= 1.4", "simplejson >= 1.4",
"zope.interface", # zope.interface 3.6.4 is incompatible with Nevow.
# These are the versions packaged in major versions of Debian or Ubuntu, or in pkgsrc.
"zope.interface == 3.3.1, == 3.5.3, == 3.6.1",
# On Windows we need at least Twisted 9.0 to avoid an indirect dependency on pywin32. # On Windows we need at least Twisted 9.0 to avoid an indirect dependency on pywin32.
# We also need Twisted 10.1 for the FTP frontend in order for Twisted's FTP server to # We also need Twisted 10.1 for the FTP frontend in order for Twisted's FTP server to