Depend on Twisted >= 15.2.0 and (finally!) retire the setup_requires hack.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
This commit is contained in:
parent
9142b25f00
commit
fa5d86b55c
|
@ -29,6 +29,19 @@ install_requires = [
|
|||
# zope.interface 3.6.3 and 3.6.4 are incompatible with Nevow (#1435).
|
||||
"zope.interface >= 3.6.0, != 3.6.3, != 3.6.4",
|
||||
|
||||
# * We need Twisted 10.1.0 for the FTP frontend in order for
|
||||
# Twisted's FTP server to support asynchronous close.
|
||||
# * The SFTP frontend depends on Twisted 11.0.0 to fix the SSH server
|
||||
# rekeying bug <https://twistedmatrix.com/trac/ticket/4395>
|
||||
# * The FTP frontend depends on Twisted >= 11.1.0 for
|
||||
# filepath.Permissions
|
||||
# * Nevow 0.11.1 depends on Twisted >= 13.0.0.
|
||||
# * The Magic Folder frontend depends on Twisted >= 15.2.0.
|
||||
"Twisted >= 15.2.0",
|
||||
|
||||
# Nevow 0.11.1 can be installed using pip (#2032).
|
||||
"Nevow >= 0.11.1",
|
||||
|
||||
# * foolscap < 0.5.1 had a performance bug which spent O(N**2) CPU for
|
||||
# transferring large mutable files of size N.
|
||||
# * foolscap < 0.6 is incompatible with Twisted 10.2.0.
|
||||
|
@ -53,6 +66,9 @@ install_requires = [
|
|||
"pyasn1-modules >= 0.0.5", # service-identity depends on this
|
||||
]
|
||||
|
||||
# We no longer have any setup dependencies.
|
||||
setup_requires = []
|
||||
|
||||
# Includes some indirect dependencies, but does not include allmydata.
|
||||
# These are in the order they should be listed by --version, etc.
|
||||
package_imports = [
|
||||
|
@ -101,63 +117,6 @@ if not hasattr(sys, 'frozen'):
|
|||
package_imports.append(('setuptools', 'setuptools'))
|
||||
|
||||
|
||||
# * On Linux we need at least Twisted 10.1.0 for inotify support
|
||||
# used by the drop-upload frontend.
|
||||
# * We also need Twisted 10.1.0 for the FTP frontend in order for
|
||||
# Twisted's FTP server to support asynchronous close.
|
||||
# * The SFTP frontend depends on Twisted 11.0.0 to fix the SSH server
|
||||
# rekeying bug <https://twistedmatrix.com/trac/ticket/4395>
|
||||
# * The FTP frontend depends on Twisted >= 11.1.0 for
|
||||
# filepath.Permissions
|
||||
#
|
||||
# On Windows, Twisted >= 12.2.0 has a dependency on pywin32.
|
||||
# Since pywin32 can only be installed manually, we fall back to
|
||||
# requiring earlier versions of Twisted and Nevow if it is not
|
||||
# already installed.
|
||||
# <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2028>
|
||||
#
|
||||
# When the fallback is used we also need to work around the fact
|
||||
# that Nevow imports itself when building, which causes Twisted
|
||||
# and zope.interface to be imported; therefore, we need to set
|
||||
# setup_requires to make sure that the versions of Twisted and
|
||||
# zope.interface used at build time satisfy Nevow's requirements.
|
||||
#
|
||||
# In cases where this fallback isn't needed, we prefer Nevow >= 0.11.1
|
||||
# which can be installed using pip, and Twisted >= 13.0.0 which
|
||||
# Nevow 0.11.1 depends on. In this case we should *not* use the
|
||||
# setup_requires hack, because if we do then the build will break
|
||||
# when Twisted < 13.0.0 is already installed (even though it could
|
||||
# have succeeded by building a later version under support/ ).
|
||||
#
|
||||
# <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2032>
|
||||
# <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2249>
|
||||
# <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2291>
|
||||
# <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2286>
|
||||
|
||||
setup_requires = []
|
||||
|
||||
_use_old_Twisted_and_Nevow = False
|
||||
if sys.platform == "win32":
|
||||
try:
|
||||
import win32api
|
||||
[win32api]
|
||||
except ImportError:
|
||||
_use_old_Twisted_and_Nevow = True
|
||||
|
||||
if _use_old_Twisted_and_Nevow:
|
||||
install_requires += [
|
||||
"Twisted >= 11.1.0, <= 12.1.0",
|
||||
"Nevow >= 0.9.33, <= 0.10",
|
||||
]
|
||||
setup_requires += [req for req in install_requires if req.startswith('Twisted')
|
||||
or req.startswith('zope.interface')]
|
||||
else:
|
||||
install_requires += [
|
||||
"Twisted >= 13.0.0",
|
||||
"Nevow >= 0.11.1",
|
||||
]
|
||||
|
||||
|
||||
# * pyOpenSSL is required in order for foolscap to provide secure connections.
|
||||
# Since foolscap doesn't reliably declare this dependency in a machine-readable
|
||||
# way, we need to declare a dependency on pyOpenSSL ourselves. Tahoe-LAFS does
|
||||
|
|
Loading…
Reference in New Issue