| Index: third_party/twisted_8_1/twisted/topfiles/NEWS
 | 
| diff --git a/third_party/twisted_8_1/twisted/topfiles/NEWS b/third_party/twisted_8_1/twisted/topfiles/NEWS
 | 
| deleted file mode 100644
 | 
| index e7d1ae42e1e5c139bebec1204c952ec04311484c..0000000000000000000000000000000000000000
 | 
| --- a/third_party/twisted_8_1/twisted/topfiles/NEWS
 | 
| +++ /dev/null
 | 
| @@ -1,610 +0,0 @@
 | 
| -Ticket numbers in this file can be looked up by visiting
 | 
| -http://twistedmatrix.com/trac/ticket/<number>
 | 
| -
 | 
| -8.1.0 (2008-05-18)
 | 
| -==================
 | 
| -
 | 
| -Features
 | 
| ---------
 | 
| -
 | 
| - - twisted.internet.error.ConnectionClosed is a new exception which is the
 | 
| -   superclass of ConnectionLost and ConnectionDone (#3137)
 | 
| - - Trial's CPU and memory performance should be better now (#3034)
 | 
| - - twisted.python.filepath.FilePath now has a chmod method (#3124)
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| -
 | 
| - - Some reactor re-entrancy regressions were fixed (#3146, #3168)
 | 
| - - A regression was fixed whereby constructing a Failure for an exception and
 | 
| -   traceback raised out of a Pyrex extension would fail (#3132)
 | 
| - - CopyableFailures in PB can again be created from CopiedFailures (#3174)
 | 
| - - FilePath.remove, when called on a FilePath representing a symlink to a
 | 
| -   directory, no longer removes the contents of the targeted directory, and
 | 
| -   instead removes the symlink (#3097)
 | 
| - - FilePath now has a linkTo method for creating new symlinks (#3122)
 | 
| - - The docstring for Trial's addCleanup method now correctly specifies when
 | 
| -   cleanup functions are run (#3131)
 | 
| - - assertWarns now deals better with multiple identical warnings (#2904)
 | 
| - - Various windows installer bugs were fixed (#3115, #3144, #3150, #3151, #3164)
 | 
| - - API links in the howto documentation have been corrected (#3130)
 | 
| - - The Win32 Process transport object now has a pid attribute (#1836)
 | 
| - - A doc bug in the twistd plugin howto which would inevitably lead to
 | 
| -   confusion was fixed (#3183)
 | 
| - - A regression breaking IOCP introduced after the last release was fixed
 | 
| -   (#3200)
 | 
| -
 | 
| -
 | 
| -Deprecations and Removals
 | 
| --------------------------
 | 
| -
 | 
| - - mktap is now fully deprecated, and will emit DeprecationWarnings when used
 | 
| -   (#3127)
 | 
| -
 | 
| -Other
 | 
| ------
 | 
| - - #3079, #3118, #3120, #3145, #3069, #3149, #3186, #3208, #2762
 | 
| -
 | 
| -
 | 
| -8.0.1 (2008-03-26)
 | 
| -==================
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| - - README no longer refers to obsolete trial command line option
 | 
| - - twistd no longer causes a bizarre DeprecationWarning about mktap
 | 
| -
 | 
| -
 | 
| -8.0.0 (2008-03-17)
 | 
| -==================
 | 
| -
 | 
| -Features
 | 
| ---------
 | 
| -
 | 
| - - The IOCP reactor has had many changes and is now greatly improved
 | 
| -   (#1760, #3055)
 | 
| - - The main Twisted distribution is now easy_installable (#1286, #3110)
 | 
| - - twistd can now profile with cProfile (#2469)
 | 
| - - twisted.internet.defer contains a DeferredFilesystemLock which gives a
 | 
| -   Deferred interface to lock file acquisition (#2180)
 | 
| - - twisted.python.modules is a new system for representing and manipulating
 | 
| -   module paths (i.e. sys.path) (#1951)
 | 
| - - twisted.internet.fdesc now contains a writeToFD function, along with other
 | 
| -   minor fixes (#2419)
 | 
| - - twisted.python.usage now allows optional type enforcement (#739)
 | 
| - - The reactor now has a blockingCallFromThread method for non-reactor threads
 | 
| -   to use to wait for a reactor-scheduled call to return a result (#1042, #3030)
 | 
| - - Exceptions raised inside of inlineCallbacks-using functions now have a
 | 
| -   better chance of coming with a meaningful traceback (#2639, #2803)
 | 
| - - twisted.python.randbytes now contains code for generating secure random
 | 
| -   bytes (#2685)
 | 
| - - The classes in twisted.application.internet now accept a reactor parameter
 | 
| -   for specifying the reactor to use for underlying calls to allow for better
 | 
| -   testability (#2937)
 | 
| - - LoopingCall now allows you to specify the reactor to use to schedule new
 | 
| -   calls, allowing much better testing techniques (#2633, #2634)
 | 
| - - twisted.internet.task.deferLater is a new API for scheduling calls and
 | 
| -   getting deferreds which are fired with their results (#1875)
 | 
| - - objgrep now knows how to search through deque objects (#2323)
 | 
| - - twisted.python.log now contains a Twisted log observer which can forward
 | 
| -   messages to the Python logging system (#1351)
 | 
| - - Log files now include seconds in the timestamps (#867)
 | 
| - - It is now possible to limit the number of log files to create during log
 | 
| -   rotation (#1095)
 | 
| - - The interface required by the log context system is now documented as
 | 
| -   ILoggingContext, and abstract.FileDescriptor now declares that it implements
 | 
| -   it (#1272)
 | 
| - - There is now an example cred checker that uses a database via adbapi (#460)
 | 
| - - The epoll reactor is now documented in the choosing-reactors howto (#2539)
 | 
| - - There were improvements to the client howto (#222)
 | 
| - - Int8Receiver was added (#2315)
 | 
| - - Various refactorings to AMP introduced better testability and public
 | 
| -   interfaces (#2657, #2667, #2656, #2664, #2810)
 | 
| - - twisted.protocol.policies.TrafficLoggingFactory now has a resetCounter
 | 
| -   method (#2757)
 | 
| - - The FTP client can be told which port range within which to bind passive
 | 
| -   transfer ports (#1904)
 | 
| - - twisted.protocols.memcache contains a new asynchronous memcache client
 | 
| -   (#2506, #2957)
 | 
| - - PB now supports anonymous login (#439, #2312)
 | 
| - - twisted.spread.jelly now supports decimal objects (#2920)
 | 
| - - twisted.spread.jelly now supports all forms of sets (#2958)
 | 
| - - There is now an interface describing the API that process protocols must
 | 
| -   provide (#3020)
 | 
| - - Trial reporting to core unittest TestResult objects has been improved (#2495)
 | 
| - - Trial's TestCase now has an addCleanup method which allows easy setup of
 | 
| -   tear-down code (#2610, #2899)
 | 
| - - Trial's TestCase now has an assertIsInstance method (#2749)
 | 
| - - Trial's memory footprint and speed are greatly improved (#2275)
 | 
| - - At the end of trial runs, "PASSED" and "FAILED" messages are now colorized
 | 
| -   (#2856)
 | 
| - - Tests which leave global state around in the reactor will now fail in
 | 
| -   trial. A new option, --unclean-warnings, will convert these errors back into
 | 
| -   warnings (#2091)
 | 
| - - Trial now has a --without-module command line for testing code in an
 | 
| -   environment that lacks a particular Python module (#1795)
 | 
| - - Error reporting of failed assertEquals assertions now has much nicer
 | 
| -   formatting (#2893)
 | 
| - - Trial now has methods for monkey-patching (#2598)
 | 
| - - Trial now has an ITestCase (#2898, #1950)
 | 
| - - The trial reporter API now has a 'done' method which is called at the end of
 | 
| -   a test run (#2883)
 | 
| - - TestCase now has an assertWarns method which allows testing that functions
 | 
| -   emit warnings (#2626, #2703)
 | 
| - - There are now no string exceptions in the entire Twisted code base (#2063)
 | 
| - - There is now a system for specifying credentials checkers with a string
 | 
| -   (#2570)
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| -
 | 
| - - Some tests which were asserting the value of stderr have been changed
 | 
| -   because Python uncontrollably writes bytes to stderr (#2405)
 | 
| - - Log files handle time zones with DST better (#2404)
 | 
| - - Subprocesses using PTYs on OS X that are handled by Twisted will now be able
 | 
| -   to more reliably write the final bytes before they exit, allowing Twisted
 | 
| -   code to more reliably receive them (#2371, #2858)
 | 
| - - Trial unit test reporting has been improved (#1901)
 | 
| - - The kqueue reactor handles connection failures better (#2172)
 | 
| - - It's now possible to run "trial foo/bar/" without an exception: trailing
 | 
| -   slashes no longer cause problems (#2005)
 | 
| - - cred portals now better deal with implementations of inherited interfaces
 | 
| -   (#2523)
 | 
| - - FTP error handling has been improved (#1160, 1107)
 | 
| - - Trial behaves better with respect to file locking on Windows (#2482)
 | 
| - - The FTP server now gives a better error when STOR is attempted during an
 | 
| -   anonymous session (#1575)
 | 
| - - Trial now behaves better with tests that use the reactor's threadpool (#1832)
 | 
| - - twisted.python.reload now behaves better with new-style objects (#2297)
 | 
| - - LogFile's defaultMode parameter is now better implemented, preventing
 | 
| -   potential security exploits (#2586)
 | 
| - - A minor obscure leak in thread pools was corrected (#1134)
 | 
| - - twisted.internet.task.Clock now returns the correct DelayedCall from
 | 
| -   callLater, instead of returning the one scheduled for the furthest in the
 | 
| -   future (#2691)
 | 
| - - twisted.spread.util.FilePager no longer unnecessarily buffers data in
 | 
| -   memory (#1843, 2321)
 | 
| - - Asking for twistd or trial to use an unavailable reactor no longer prints a
 | 
| -   traceback (#2457)
 | 
| - - System event triggers have fewer obscure bugs (#2509)
 | 
| - - Plugin discovery code is much better behaved, allowing multiple
 | 
| -   installations of a package with plugins (#2339, #2769)
 | 
| - - Process and PTYProcess have been merged and some minor bugs have been fixed
 | 
| -   (#2341)
 | 
| - - The reactor has less global state (#2545)
 | 
| - - Failure can now correctly represent and format errors caused by string
 | 
| -   exceptions (#2830)
 | 
| - - The epoll reactor now has better error handling which now avoids the bug
 | 
| -   causing 100% CPU usage in some cases (#2809)
 | 
| - - Errors raised during trial setUp or tearDown methods are now handled better
 | 
| -   (#2837)
 | 
| - - A problem when deferred callbacks add new callbacks to the deferred that
 | 
| -   they are a callback of was fixed (#2849)
 | 
| - - Log messages that are emitted during connectionMade now have the protocol
 | 
| -   prefix correctly set (#2813)
 | 
| - - The string representation of a TCP Server connection now contains the actual
 | 
| -   port that it's bound to when it was configured to listen on port 0 (#2826)
 | 
| - - There is better reporting of error codes for TCP failures on Windows (#2425)
 | 
| - - Process spawning has been made slightly more robust by disabling garbage
 | 
| -   collection temporarily immediately after forking so that finalizers cannot
 | 
| -   be executed in an unexpected environment (#2483)
 | 
| - - namedAny now detects import errors better (#698)
 | 
| - - Many fixes and improvements to the twisted.python.zipstream module have
 | 
| -   been made (#2996)
 | 
| - - FilePager no longer blows up on empty files (#3023)
 | 
| - - twisted.python.util.FancyEqMixin has been improved to cooperate with objects
 | 
| -   of other types (#2944)
 | 
| - - twisted.python.FilePath.exists now restats to prevent incorrect result
 | 
| -   (#2896)
 | 
| - - twisted.python.util.mergeFunctionMetadata now also merges the __module__
 | 
| -   attribute (#3049)
 | 
| - - It is now possible to call transport.pauseProducing within connectionMade on
 | 
| -   TCP transports without it being ignored (#1780)
 | 
| - - twisted.python.versions now understands new SVN metadata format for fetching
 | 
| -   the SVN revision number (#3058)
 | 
| - - It's now possible to use reactor.callWhenRunning(reactor.stop) on gtk2 and
 | 
| -   glib2 reactors (#3011)
 | 
| -
 | 
| -Deprecations and removals
 | 
| --------------------------
 | 
| - - twisted.python.timeoutqueue is now deprecated (#2536)
 | 
| - - twisted.enterprise.row and twisted.enterprise.reflector are now deprecated
 | 
| -   (#2387)
 | 
| - - twisted.enterprise.util is now deprecated (#3022)
 | 
| - - The dispatch and dispatchWithCallback methods of ThreadPool are now
 | 
| -   deprecated (#2684)
 | 
| - - Starting the same reactor multiple times is now deprecated (#1785)
 | 
| - - The visit method of various test classes in trial has been deprecated (#2897)
 | 
| - - The --report-profile option to twistd and twisted.python.dxprofile are
 | 
| -   deprecated (#2908)
 | 
| - - The upDownError method of Trial reporters is deprecated (#2883)
 | 
| -
 | 
| -Other
 | 
| ------
 | 
| -
 | 
| - - #2396, #2211, #1921, #2378, #2247, #1603, #2463, #2530, #2426, #2356, #2574,
 | 
| - - #1844, #2575, #2655, #2640, #2670, #2688, #2543, #2743, #2744, #2745, #2746,
 | 
| - - #2742, #2741, #1730, #2831, #2216, #1192, #2848, #2767, #1220, #2727, #2643,
 | 
| - - #2669, #2866, #2867, #1879, #2766, #2855, #2547, #2857, #2862, #1264, #2735,
 | 
| - - #942, #2885, #2739, #2901, #2928, #2954, #2906, #2925, #2942, #2894, #2793,
 | 
| - - #2761, #2977, #2968, #2895, #3000, #2990, #2919, #2969, #2921, #3005, #421,
 | 
| - - #3031, #2940, #1181, #2783, #1049, #3053, #2847, #2941, #2876, #2886, #3086,
 | 
| - - #3095, #3109
 | 
| -
 | 
| -
 | 
| -2.5.0 (2006-12-29)
 | 
| -==================
 | 
| -
 | 
| -Twisted 2.5.0 is a major feature release, with several interesting new
 | 
| -developments and a great number of bug fixes. Some of the highlights
 | 
| -follow.
 | 
| -
 | 
| - * AMP, the Asynchronous Messaging Protocol, was introduced.  AMP is
 | 
| -   a protocol which provides request/response semantics over a
 | 
| -   persistent connection in a very simple and extensible manner.
 | 
| -
 | 
| - * An Epoll-based reactor was added, which can be used with twistd or
 | 
| -   trial by passing "-r epoll" on the command line. This may improve
 | 
| -   performance of certain high-traffic network applications.
 | 
| -
 | 
| - * The 'twistd' command can now accept sub-commands which name an
 | 
| -   application to run. For example, 'twistd web --path .' will start a
 | 
| -   web server serving files out of the current directory. This
 | 
| -   functionality is meant to replace the old way of doing things with
 | 
| -   'mktap' and 'twistd -f'.
 | 
| -
 | 
| - * Python 2.5 is now supported. Previous releases of Twisted were
 | 
| -   broken by changes in the release of Python 2.5.
 | 
| -
 | 
| - * 'inlineCallbacks' was added, which allows taking advantage of the
 | 
| -   new 'yield' expression syntax in Python 2.5 to avoid writing
 | 
| -   callbacks for Deferreds.
 | 
| -
 | 
| -In addition to these changes, there are many other minor features and
 | 
| -a large number of bug fixes.
 | 
| -
 | 
| -Features
 | 
| ---------
 | 
| - - log.err can now take a second argument for specifying information
 | 
| -   about an error (#1399)
 | 
| - - A time-simulating test helper class, twisted.internet.task.Clock,
 | 
| -   was added (#1757)
 | 
| - - Trial docstring improvements were made (#1604, #2133)
 | 
| - - New SSL features were added to twisted.internet.ssl, such as client
 | 
| -   validation (#302)
 | 
| - - Python 2.5 is now supported (#1867)
 | 
| - - Trial's assertFailure now provides more information on failure (#1869)
 | 
| - - Trial can now be run on tests within a zipfile (#1940)
 | 
| - - AMP, a new simple protocol for asynchronous messaging, was added (#1715)
 | 
| - - Trial's colorful reporter now works on win32 (#1646)
 | 
| - - Trial test modules may now dynamically construct TestSuites (#1638, #2165)
 | 
| - - twistd can now make use of plugins to run applications (#1922, #2013)
 | 
| - - Twisted now works with the latest (unreleased) zope.interface (#2160)
 | 
| - - An epoll-based reactor, epollreactor, was added. It is selectable
 | 
| -   with the -r options to twistd and trial (#1953)
 | 
| - - twistd and trial now use the plugin system to find reactors which
 | 
| -   can be selected (#719)
 | 
| - - twisted.internet.defer.inlineCallbacks was added. It takes
 | 
| -   advantage of Python 2.5's generators to offer a way to deal with
 | 
| -   Deferreds without callbacks (#2100)
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| - - Traceback formatting in Trial was improved (#1454, #1610)
 | 
| - - twisted.python.filepath.FilePath.islink now actually returns True when
 | 
| -   appropriate (#1773)
 | 
| - - twisted.plugin now no longer raises spurious errors (#926)
 | 
| - - twisted.pb Cacheables may now be new-style classes (#1324)
 | 
| - - FileDescriptor now deals with producers in a more
 | 
| -   interface-compliant and robust manner (#2286, #811)
 | 
| - - "setup.py build" and other setup.py commands which don't actually
 | 
| -   install the software now work (#1835)
 | 
| - - wxreactor has had various fixes (#1235, #1574, #1688)
 | 
| -
 | 
| -Deprecations and Removals
 | 
| --------------------------
 | 
| - - The old twisted.cred API (Perspectives, Identities and such) was
 | 
| -   removed (#1440)
 | 
| - - twisted.spread.newjelly was removed (#1831)
 | 
| - - Various deprecated things in twisted.python.components were
 | 
| -   removed: Interface, MetaInterface, getAdapterClass, and
 | 
| -   getAdapterClassWithInheritance (#1636)
 | 
| - - twisted.enterprise.xmlreflector was removed (#661)
 | 
| - - mktap is slowly on its way out, now that twistd supports plugins. It
 | 
| -   is not yet officially deprecated (#2013)
 | 
| - - tkmktap was removed, because it wasn't working anyway (#2020)
 | 
| - - reactor.iterate calls made inside of a Trial test case are
 | 
| -   deprecated (#2090)
 | 
| - - twisted.internet.qtreactor was removed: It has been moved to a
 | 
| -   separate project. See http://twistedmatrix.com/trac/wiki/QTReactor
 | 
| -   (#2130, #2137)
 | 
| - - threadedselectreactor is now not a directly usable reactor; it is
 | 
| -   only meant to help in writing other reactors (#2126)
 | 
| - - twisted.python.reflect.funcinfo is deprecated (#2079)
 | 
| - - twisted.spread.sturdy, which was already completely broken, was
 | 
| -   removed (#2299)
 | 
| -
 | 
| -
 | 
| -Other
 | 
| ------
 | 
| -The following changes are minor or closely related to other changes.
 | 
| -
 | 
| - - #1783, #1786, #1788, #1648, #1734, #1609, #1800, #1818,
 | 
| -   #1629, #1829, #491, #1816, #1824, #1855, #1797, #1637, #1371,
 | 
| -   #1892, #1887, #1897, #1563, #1741, #1943, #1952, #1276,
 | 
| -   #1837, #1726, #1963, #1965, #1973, #1976, #1991, #1936, #1113,
 | 
| -   #630, #2002, #2040, #2044, #1617, #2045, #2055, #2056, #2022,
 | 
| -   #2052, #1552, #1999, #1507, #2054, #1970, #1968, #662, #1910,
 | 
| -   #1694, #1999, #1409, #2150, #2127, #2155, #1983, #2014, #2222,
 | 
| -   #1067, #2136, #2065, #1430, #2173, #2212, #1871, #2147, #1199,
 | 
| -   #2273, #428, #992, #815, #2024, #2292, #2125, #2139, #2291, #2174,
 | 
| -   #2306, #2228, #2309, #2319, #2317, #2313, #2154, #1985, #1201
 | 
| -
 | 
| -
 | 
| -2.4.0 (2006-05-21)
 | 
| -==================
 | 
| -
 | 
| -Features
 | 
| ---------
 | 
| - - twisted.internet.task.Cooperator (Added along with #1701).
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| - - Errors in UDP protocols no longer unbind the UDP port (#1695).
 | 
| - - Misc: #1717, #1705, #1563, #1719, #1721, #1722, #1728.
 | 
| -
 | 
| -
 | 
| -2.3.0 (2006-05-14)
 | 
| -==================
 | 
| -
 | 
| -Features
 | 
| ---------
 | 
| - - twisted-dev-mode's F9 now uses trial's --testmodule feature, rather than
 | 
| -   trying to guess what tests to run.  This will break files using the "-x"
 | 
| -   test-case-name hack (just use a comma separated list instead).
 | 
| - - API Documentation improvements.
 | 
| - - A new Producer/Consumer guide (#53)
 | 
| - - Better-defined error behavior in IReactorMulticast (#1578)
 | 
| - - IOCP Multicast support (#1500)
 | 
| - - Improved STDIO support on Windows. (#1553)
 | 
| - - LoopingCall supports Deferreds such that it will wait until a
 | 
| -   Deferred has fired before rescheduling the next call (#1487)
 | 
| - - Added twisted.python.versions.Version, a structured representation
 | 
| -   of Version information, including support for SVN revision numbers
 | 
| -   (#1663)
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| -
 | 
| - - Many trial fixes, as usual 
 | 
| - - All API documentation is now correctly formatted as epytext (#1545)
 | 
| - - twisted.python.filepath.FilePath.__repr__ is safer.
 | 
| - - Fix trial's "until-failure" mode. (#1453)
 | 
| - - deferredGenerator now no longer causes handled exceptions (or
 | 
| -   results) to propagate to the resulting Deferred (#1709).
 | 
| - - Misc: #1483, #1495, #1503, #1532, #1539, #1559, #1509, #1538,
 | 
| -   #1571, #1331, #1561, #737, #1562, #1573, #1594, #1607, #1407, #1615,
 | 
| -   #1645, #1634, #1620, #1664, #1666, #1650, #1670, #1675, #1692, #1710,
 | 
| -   #1668.
 | 
| -
 | 
| -Deprecations
 | 
| -------------
 | 
| -
 | 
| - - Removal of already-deprecated trial APIs: the assertions module,
 | 
| -   util.deferredResult, util.deferredError, util.fireWhenDoneFunc,
 | 
| -   util.spinUntil, util.spinWhile, util.extract_tb,
 | 
| -   util.format_exception, util.suppress_warnings, unittest.wait,
 | 
| -   util.wait
 | 
| - - The backwards compatibility layer of twisted.python.components
 | 
| -   (e.g., backwardsCompatImplements, fixClassImplements, etc) has been
 | 
| -   disabled. The functions still exist, but do nothing as to not break
 | 
| -   user code outright (#1511)
 | 
| - - Deprecate the usage of the 'default' argument as a keyword argument
 | 
| -   in Interface.__call__. Passing a second positional argument to
 | 
| -   specify the default return value of the adaptation is still
 | 
| -   supported.
 | 
| -
 | 
| -
 | 
| -2.2.0 (2006-02-12)
 | 
| -==================
 | 
| -
 | 
| -Features
 | 
| ---------
 | 
| - - Twisted no longer works with Python 2.2
 | 
| - - FTP server supports more clients
 | 
| - - Process support on Windows
 | 
| - - twisted.internet.stdio improved (including Windows support!)
 | 
| - - Trial:
 | 
| -   - Continued Trial refactoring
 | 
| -   - Default trial reporter is verbose black&white when color isn't supported
 | 
| -   - Deferreds returned in trial tests that don't fire before the
 | 
| -     unittest timeout now have their errback fired with a TimeoutError
 | 
| -   - raising SkipTest in setUp and setUpClass skips tests
 | 
| -   - Test suites are failed if there are import errors
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| - - iocpreactor fixes
 | 
| - - Threadpool fixes
 | 
| - - Fixed infinite loops in datagramReceived edge cases
 | 
| - - Issues resolved: 654, 773, 998, 1005, 1008, 1116, 1123, 1198, 1221,
 | 
| -   1232, 1233, 1236, 1240, 1244, 1258, 1263, 1265, 1266, 1271, 1275,
 | 
| -   1293, 1294, 1298, 1308, 1316, 1317, 1321, 1341, 1344, 1353, 1359,
 | 
| -   1372, 1374, 1377, 1379, 1380, 1385, 1388, 1389, 1413, 1422, 1426,
 | 
| -   1434, 1435, 1448, 1449, 1456
 | 
| -
 | 
| -Deprecations
 | 
| -------------
 | 
| - - Trial:
 | 
| -   - spinWhile and spinUntil
 | 
| -   - util.wait
 | 
| -   - extract_tb and format_exception
 | 
| -   - util.suppressWarnings
 | 
| -   - runReactor is gone
 | 
| -
 | 
| -
 | 
| -2.1.0 (2005-11-06)
 | 
| -==================
 | 
| -
 | 
| -Features
 | 
| ---------
 | 
| - - threadedselectreactor, a reactor which potentially makes
 | 
| -   integration with foreign event loops much simpler.
 | 
| - - major improvements to twisted.conch.insults, including many new widgets.
 | 
| - - adbapi ConnectionPools now have 'runWithConnection' which is
 | 
| -   similar to runInteraction but gives you a connection object instead of
 | 
| -   a transaction. [975]
 | 
| - - __file__ is now usable in tac files
 | 
| - - twisted.cred.pamauth now contains a PAM checker (moved from twisted.conch)
 | 
| - - twisted.protocols.policies.LimitTotalConnectionsFactory now exists,
 | 
| -   which does as the name suggests
 | 
| - - twisted.protocols.ident now uses /proc/net/tcp on Linux [233]
 | 
| - - trial now recurses packages by default (a la the old -R parameter)
 | 
| - - (PB) Calling a remote method that doesn't exist now raises
 | 
| -   NoSuchMethod instead of AttributeError.
 | 
| -
 | 
| -Fixes
 | 
| ------
 | 
| - - FTP client and server improvements
 | 
| - - Trial improvements: The code is now much simpler, and more stable.
 | 
| - - twisted.protocols.basic.FileSender now works with empty files 
 | 
| - - Twisted should now be much more usable on Pythons without thread support.
 | 
| - - minor improvements to process code in win32eventreactor
 | 
| - - twistd -y (--python) now implies -o (--nosave). [539]
 | 
| - - improved lockfile handling especially with respect to unix sockets.
 | 
| - - deferredGenerator now no longer overuses the stack, which sometimes
 | 
| -   caused stack overflows.
 | 
| - - Failure.raiseException now at least always raises the correct Exception.
 | 
| - - minor improvements to serialport code
 | 
| -
 | 
| -Deprecations
 | 
| -------------
 | 
| - - twisted.python.componts.getAdapter. Use IFoo(o) instead.
 | 
| - - Adapter persistence (IFoo(x, persist=True)). Just don't use it.
 | 
| - - log.debug. It was equivalent to log.msg(), just use that.
 | 
| - - twisted.protocols.telnet. twisted.conch.telnet replaces it.
 | 
| - - Setting a trial reporter using a flag to 'trial'. Instead of 'trial
 | 
| -   --bwverbose', for example, use 'trial --reporter=bwverbose'.
 | 
| - - trial --coverage will become a flag in Twisted 2.2.
 | 
| - - passing a fully-qualified python name to --reporter is
 | 
| -   deprecated. Pass only names of Reporter plugins.
 | 
| - - trial --psyco.
 | 
| - - trial -R (--recurse) is now the default, so passing it is deprecated.
 | 
| - - trial --reporter-args. Use the plugin system to do this sort of thing.
 | 
| - - trial.assertions.assertionMethod and trial.unittest.assertionMethod
 | 
| -   are both deprecated. Use instance methods on TestCases instead.
 | 
| - - trial's deferredResult, deferredError, and wait functions. Return
 | 
| -   Deferreds from your test methods instead of using them.
 | 
| - - Raising unittest.SkipTest with no arguments. Give a reason for your skip.
 | 
| - - The Failure returned from a gatherResults and DeferredList is now
 | 
| -   of type FirstError instead of a tuple of (Exception, index). It
 | 
| -   supports a firstError[idx] syntax but that is deprecated. Use
 | 
| -   firstError.subFailure and firstError.index instead.
 | 
| - - whenThreaded now simply calls the passed function synchronously.
 | 
| -
 | 
| -2.0.1 (2005-05-09)
 | 
| -===================
 | 
| -Minor bug fix release.
 | 
| -
 | 
| -SVN rev (file) - [bug number] description
 | 
| ------------------------------------------
 | 
| -13307 (twisted/topfiles/README) - Mention support for python 2.4, too
 | 
| -13324 (twisted/internet/defer.py) - [947] Fix DeferredQueue backlog/size limit.
 | 
| -13354 (twisted/plugins/__init__.py) - Correct maintainer address.
 | 
| -13355 (twisted/test/test_defer.py) - improvements to DeferredQueue test case
 | 
| -13387 (setup.py) - add news to list of subprojects to install
 | 
| -13332 (twisted/internet/posixbase.py) - Fix spelling error
 | 
| -13366 (twisted/internet/qtreactor.py) - [957] [954] reactor.iterate fixes
 | 
| -13368 (twisted/test/test_internet.py) - Fix DelayedCall test case
 | 
| -13422 (twisted/internet/posixbase.py) - Remove log from _Win32Waker creation.
 | 
| -13437 (twisted/plugin.py) - [958] Only write cache if there were changes.
 | 
| -13666 (twisted/internet/gtkreactor.py,gtk2reactor.py) - Don't run callbacks
 | 
| -          until the reactor is actually up and running
 | 
| -13748 (twisted/internet/gtk2reactor.py) - [552] [994] Initialize threading properly.
 | 
| -
 | 
| -
 | 
| -2.0.0 (2005-03-25)
 | 
| -==================
 | 
| -
 | 
| -Major new features
 | 
| -------------------
 | 
| - - Replaced home-grown components system with zope.interface.
 | 
| - - Split Twisted into multiple pieces.
 | 
| - - Relicensed: Now under the MIT license, rather than LGPL.
 | 
| - - Python 2.4 compatibility fixes
 | 
| - - Major efficiency improvements in TCP buffering algorithm.
 | 
| - - Major efficiency improvements in reactor.callLater/DelayedCall.
 | 
| - - Half-close support for TCP/SSL. (loseWriteConnection).
 | 
| -
 | 
| -Miscellaneous features/fixes
 | 
| -----------------------------
 | 
| - - New plugin system: twisted.plugin
 | 
| - - Better debugging support. Control-C will break you into PDB.
 | 
| - - The twistd command has --uid --gid command line arguments.
 | 
| - - *Incompatibility: mktap defaults to not change UID/GID, instead of saving
 | 
| -   the invoking user's UID/GID.
 | 
| - - Removed some functions that were deprecated since Twisted 1.0.
 | 
| - - ZSH tab-completion for twisted commands.
 | 
| -
 | 
| - - More correct daemonization in twistd.
 | 
| - - twisted.python.log: do not close the log because of invalid format string.
 | 
| - - Disabled automatic import of cBanana. 
 | 
| - - Boolean support for twisted.persisted.marmalade.
 | 
| - - Refactor of plugin and application HOWTO documentation
 | 
| - - Async HOWTO expanded greatly.
 | 
| - - twisted.python.usage outputs the actual defaults, not passed in values.
 | 
| -
 | 
| -twisted.trial
 | 
| --------------
 | 
| - - Rewritten, a bunch of bugs fixed, a few more added.
 | 
| -
 | 
| -twisted.internet
 | 
| -----------------
 | 
| - - Multi-listen UDP multicast support
 | 
| - - protocol.ClientCreator has a connectSSL.
 | 
| - - defer.deferredGenerator: allows you to write Deferred code w/o callbacks.
 | 
| - - Deferred.setTimeout is now deprecated.
 | 
| - - New defer.DeferredLock/DeferredSemaphore/DeferredQueue.
 | 
| - - Add utils.getProcessOutputAndValue to get stdout/err/value.
 | 
| -
 | 
| - - Default DNS resolver is now non-blocking.
 | 
| - - Increased default TCP accept backlog from 5 to 50.
 | 
| - - Make buffering large amounts of TCP data work on Windows.
 | 
| - - Fixed SSL disconnect to not wait for remote host. Fixes issue with firefox.
 | 
| - - Separate state for Deferred finalization so that GC-loops preventing
 | 
| -   finalization don't occur.
 | 
| - - Many Process bugfixes
 | 
| - - Processes spawned on windows can successfully use sockets
 | 
| - - gtk2reactor can optionally use glib event loop instead of gtk
 | 
| - - gtk2reactor notifies gobject to initialize thread support
 | 
| - - Fix registering a streaming producer on a transport.
 | 
| - - Close client sockets explicitly after failed connections.
 | 
| - - ReconnectingClientFactory now continues attempting to reconnect after all
 | 
| -   errors, not just those which are not UserErrors.
 | 
| -
 | 
| -twisted.protocols
 | 
| ------------------
 | 
| - - Portforward doesn't start reading from a client until a connection is made.
 | 
| - - Bugfixes in twisted.protocols.loopback
 | 
| - - Improve speed of twisted.protocols.LineReceiver.
 | 
| - - LineReceiver implements IProducer. (stop/pause/resumeProducing)
 | 
| - - SOCKSv4 properly closes connections
 | 
| -
 | 
| -twisted.enterprise
 | 
| -------------------
 | 
| - - Add "new connection" callback to adbapi.ConnectionPool to allow for
 | 
| -   custom db connection setup (cp_openfun)
 | 
| - - adbapi.ConnectionPool automatic reconnection support
 | 
| - - Don't log exceptions extraneously
 | 
| -
 | 
| -
 | 
| -1.3.0 (2004-05-14)
 | 
| -==================
 | 
| -
 | 
| -- Address objects for IPv4 and Unix addresses throughout twisted.internet.
 | 
| -- Improved connected UDP APIs.
 | 
| -- Refactored SSH client support.
 | 
| -- Initial implementation of Windows I/O Completion Ports event loop.
 | 
| -- Bug fixes and feature enhancements.
 | 
| -- Nevow support for Lore (so your Lore documents can use Nevow directives).
 | 
| -- This is the last release before Twisted begins splitting up.
 | 
| 
 |