From 8b4082677477daf1f5afeb77baa339e202b137b6 Mon Sep 17 00:00:00 2001 From: david-sarah Date: Thu, 21 Jul 2011 16:36:58 -0700 Subject: [PATCH] Update the dependency on Twisted to >= 10.1. This allows us to simplify some documentation: it's no longer necessary to install pywin32 on Windows, or apply a patch to Twisted in order to use the FTP frontend. fixes #1274, #1438. refs #1429 --- NEWS.rst | 11 +++++++++++ docs/frontends/FTP-and-SFTP.rst | 8 -------- docs/quickstart.rst | 7 ------- setup.py | 5 +++-- src/allmydata/_auto_deps.py | 5 ++++- 5 files changed, 18 insertions(+), 18 deletions(-) diff --git a/NEWS.rst b/NEWS.rst index 0a051428..873d06c4 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -12,8 +12,19 @@ Release 1.9.0 (2011-??-??) will throw an exception if they gather stats from a new storage server and it sends a "None" for a percentile. (`#1392`_) +Compatibility and Dependencies +'''''''''''''''''''''''''''''' + +- 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 + necessary to patch Twisted in order to use the FTP frontend. + (`#1274`_, `#1438`_) + +.. _`#1274`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1274 .. _`#1392`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1392 .. _`#1409`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1409 +.. _`#1438`: http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1438 + Release 1.8.2 (2011-01-30) -------------------------- diff --git a/docs/frontends/FTP-and-SFTP.rst b/docs/frontends/FTP-and-SFTP.rst index 15e60bc2..805d5c72 100644 --- a/docs/frontends/FTP-and-SFTP.rst +++ b/docs/frontends/FTP-and-SFTP.rst @@ -178,14 +178,6 @@ uses (which is a Python wrapper around the C++ -based Crypto++ library, a library that is frequently installed as /usr/lib/libcryptopp.a, to avoid problems with non-alphanumerics in filenames). -The FTP server requires code in Twisted that enables asynchronous closing of -file-upload operations. This code is present in Twisted-10.1 (released -27-June-2010), but not in Twisted-10.0 (released 01-March-2010). To use -Tahoe-LAFS's FTP server with Twisted-10.0 or earlier, you will need to apply -the patch attached to http://twistedmatrix.com/trac/ticket/3462 . The -Tahoe-LAFS node will refuse to start the FTP server unless it detects the -necessary support code in Twisted. This patch is not needed for SFTP. - Immutable and Mutable Files =========================== diff --git a/docs/quickstart.rst b/docs/quickstart.rst index 78863ef5..1d15faf3 100644 --- a/docs/quickstart.rst +++ b/docs/quickstart.rst @@ -38,13 +38,6 @@ install Python v2.6. Make sure that the path to the installation directory has no spaces in it (e.g. on Windows, do not install Python in the "Program Files" directory). -If you are on Windows, you now must manually install the pywin32 -package from `the pywin32 site -`_ before getting -Tahoe-LAFS. Make sure to get the correct file for the version of Python -you are using -- e.g. ending in "py2.6.exe" for Python v2.6. If using -64-bit Windows, the file should have "win-amd64" in its name. - Get Tahoe-LAFS -------------- diff --git a/setup.py b/setup.py index f527012b..09638d19 100644 --- a/setup.py +++ b/setup.py @@ -140,8 +140,9 @@ setup_requires.append('darcsver >= 1.7.2') # the requirement before Nevow's setup.py tries to "import twisted". # This only matters when Twisted is not already installed. # See http://divmod.org/trac/ticket/2629 -# Retire this hack if/when we require Nevow >= 0.9.33. -setup_requires.append('Twisted >= 2.4.0') +# Retire this hack when +# https://bugs.launchpad.net/nevow/+bug/812537 has been fixed. +setup_requires += [req for req in install_requires if req.startswith('Twisted')] # setuptools_darcs is required to produce complete distributions (such # as with "sdist" or "bdist_egg"), unless there is a diff --git a/src/allmydata/_auto_deps.py b/src/allmydata/_auto_deps.py index e8ff4bc7..c479985c 100644 --- a/src/allmydata/_auto_deps.py +++ b/src/allmydata/_auto_deps.py @@ -16,7 +16,10 @@ install_requires = [ "zope.interface", - "Twisted >= 2.4.0", + # 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 + # support asynchronous close. + "Twisted >= 10.1.0", # foolscap < 0.5.1 had a performance bug which spent # O(N**2) CPU for transferring large mutable files -- 2.37.2