Twisted 11.0.0

Milestone information

Project:
Twisted
Series:
main
Version:
11.0.0
Released:
 
Registrant:
Jessica McKellar
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
No users assigned to blueprints and bugs.
Blueprints:
No blueprints are targeted to this milestone.
Bugs:
No bugs are targeted to this milestone.

Download files for this release

File Description Downloads

Release notes 

Highlights include:

 * a new templating system in Twisted Web, "twisted.web.template", derived from Divmod Nevow.
 * improved behavior of subprocess spawning on FreeBSD.
 * the 'twistd mail' plugin now uses the endpoints API, providing a more consistent command line and compatibility with endpoint plugins.
 * twisted.plugin no longer emits a confusing traceback when it can't write a cache file.

And numerous other bugfixes and documentation improvements. For more information, see the NEWS file.

Changelog 

View the full changelog

Ticket numbers in this file can be looked up by visiting
http://twistedmatrix.com/trac/ticket/<number>

Twisted Core 11.0.0 (2011-04-01)
================================

Features
--------
 - The reactor is not restartable, but it would previously fail to
   complain. Now, when you restart an unrestartable reactor, you get
   an exception. (#2066)
 - twisted.plugin now only emits a short log message, rather than a
   full traceback, if there is a problem writing out the dropin cache
   file. (#2409)
 - Added a 'replacement' parameter to the
   'twisted.python.deprecate.deprecated' decorator. This allows
   deprecations to unambiguously specify what they have been
   deprecated in favor of. (#3047)
 - Added access methods to FilePath for FilePath.statinfo's st_ino,
   st_dev, st_nlink, st_uid, and st_gid fields. This is in
   preparation for the deprecation of FilePath.statinfo. (#4712)
 - IPv4Address and UNIXAddress now have a __hash__ method. (#4783)
 - twisted.protocols.ftp.FTP.ftp_STOR now catches `FTPCmdError`s
   raised by the file writer, and returns the error back to the
   client. (#4909)

Bugfixes
--------
 - twistd will no longer fail if a non-root user passes --uid 'myuid'
   as a command-line argument. Instead, it will emit an error message.
   (#3172)
 - IOCPReactor now sends immediate completions to the main loop
   (#3233)
 - trial can now load test methods from multiple classes, even if the
   methods all happen to be inherited from the same base class.
   (#3383)
 - twisted.web.server will now produce a correct Allow header when a
   particular render_FOO method is missing. (#3678)
 - HEAD requests made to resources whose HEAD handling defaults to
   calling render_GET now always receive a response with no body.
   (#3684)
 - trial now loads decorated test methods whether or not the decorator
   preserves the original method name. (#3909)
 - t.p.amp.AmpBox.serialize will now correctly consistently complain
   when being fed Unicode. (#3931)
 - twisted.internet.wxreactor now supports stopping more reliably.
   (#3948)
 - reactor.spawnProcess on Windows can now handle ASCII-encodable
   Unicode strings in the system environment (#3964)
 - When C-extensions are not complied for twisted, on python2.4, skip
   a test in twisted.internet.test.test_process that may hang due to a
   SIGCHLD related problem. Running 'python setup.py build_ext
   --inplace' will compile the extension and cause the test to both
   run and pass. (#4331)
 - twisted.python.logfile.LogFile now raises a descriptive exception
   when passed a log directoy which does not exist. (#4701)
 - Fixed a bug where Inotify will fail to add a filepatch to watchlist
   after it has been added/ignored previously. (#4708)
 - IPv4Address and UNIXAddress object comparison operators fixed
   (#4817)
 - twisted.internet.task.Clock now sorts the list of pending calls
   before and after processing each call (#4823)
 - ConnectionLost is now in twisted.internet.error.__all__ instead of
   twisted.words.protocols.jabber.xmlstream.__all__. (#4856)
 - twisted.internet.process now detects the most appropriate mechanism
   to use for detecting the open file descriptors on a system, getting
   Twisted working on FreeBSD even when fdescfs is not mounted.
   (#4881)
 - twisted.words.services referenced nonexistent
   twisted.words.protocols.irc.IRC_NOSUCHCHANNEL. This has been fixed.
   Related code has also received test cases. (#4915)

Improved Documentation
----------------------
 - The INSTALL file now lists all of Twisted's dependencies. (#967)
 - Added the stopService and startService methods to all finger
   example files. (#3375)
 - Missing reactor.run() calls were added in the UDP and client howto
   documents. (#3834)
 - The maxRetries attribute of
   twisted.internet.protocols.RetryingClientFactory now has API
   documentation. (#4618)
 - Lore docs pointed to a template that no longer existed, this has
   been fixed. (#4682)
 - The `servers` argument to `twisted.names.client.createResolver` now
   has more complete API documentation. (#4713)
 - Linked to the Twisted endpoints tutorial from the Twisted core
   howto list. (#4773)
 - The Endpoints howto now links to the API documentation. (#4774)
 - The Quotes howto is now more clear in its PYTHONPATH setup
   instructions. (#4785)
 - The API documentation for DeferredList's fireOnOneCallback
   parameter now gives the correct order of the elements of the result
   tuple. (#4882)

Deprecations and Removals
-------------------------
 - returning a value other than None from IProtocol.dataReceived was
   deprecated (#2491)
 - Deprecated the --extra option in trial. (#3372)
 - twisted.protocols._c_urlarg has been removed. (#4162)
 - Remove the --report-profile option for twistd, deprecated since
   2007. (#4236)
 - Deprecated twisted.persisted.journal. This library is no longer
   maintained. (#4298)
 - Removed twisted.protocols.loopback.loopback, which has been
   deprecated since Twisted 2.5. (#4547)
 - __getitem__ __getslice__ and __eq__ (tuple comparison, indexing)
   removed from twisted.internet.address.IPv4Address and
   twisted.internet.address.UNIXAddress classes UNIXAddress and
   IPv4Address properties _bwHack are now deprecated in
   twisted.internet.address (#4817)
 - twisted.python.reflect.allYourBase is now no longer used, replaced
   with inspect.getmro (#4928)
 - allYourBase and accumulateBases are now deprecated in favor of
   inspect.getmro. (#4946)

Other
-----

- #555, #1982, #2618, #2665, #2666, #4035, #4247, #4567, #4636,
  #4717, #4733, #4750, #4821, #4842, #4846, #4853, #4857, #4858,
  #4863, #4864, #4865, #4866, #4867, #4868, #4869, #4870, #4871,
  #4872, #4873, #4874, #4875, #4876, #4877, #4878, #4879, #4905,
  #4906, #4908, #4934, #4955, #4960

Twisted Conch 11.0.0 (2011-04-01)
=================================

Bugfixes
--------
 - The transport for subsystem protocols now declares that it
   implements ITransport and implements the getHost and getPeer
   methods. (#2453)
 - twisted.conch.ssh.transport.SSHTransportBase now responds to key
   exchange messages at any time during a connection (instead of only
   at connection setup). It also queues non-key exchange messages
   sent during key exchange to avoid corrupting the connection state.
   (#4395)
 - Importing twisted.conch.ssh.common no longer breaks pow(base, exp[,
   modulus]) when the gmpy package is installed and base is not an
   integer. (#4803)
 - twisted.conch.ls.lsLine now returns a time string which does not
   consider the locale. (#4937)

Improved Documentation
----------------------
 - Changed the man page for ckeygen to accurately reflect what it
   does, and corrected its synposis so that a second "ckeygen" is not
   a required part of the ckeygen command line. (#4738)

Other
-----
 - #2112

Twisted Lore 11.0.0 (2011-04-01)
================================

No significant changes have been made for this release.

Twisted Mail 11.0.0 (2011-04-01)
================================

Features
--------
 - The `twistd mail` command line now accepts endpoint descriptions
   for POP3 and SMTP servers. (#4739)
 - The twistd mail plugin now accepts new authentication options via
   strcred.AuthOptionMixin. These include --auth, --auth-help, and
   authentication type-specific help options. (#4740)

Bugfixes
--------
 - twisted.mail.imap4.IMAP4Server now generates INTERNALDATE strings
   which do not consider the locale. (#4937)

Improved Documentation
----------------------
 - Added a simple SMTP example, showing how to use sendmail. (#4042)

Other
-----

 - #4162

Twisted Names 11.0.0 (2011-04-01)
=================================

No significant changes have been made for this release.

Twisted News 11.0.0 (2011-04-01)
================================

No significant changes have been made for this release.

Other
-----
 - #4580

Twisted Pair 11.0.0 (2011-04-01)
================================

No significant changes have been made for this release.

Twisted Runner 11.0.0 (2011-04-01)
==================================

No significant changes have been made for this release.

Twisted Web 11.0.0 (2011-04-01)
===============================

Features
--------
 - twisted.web._newclient.HTTPParser (and therefore Agent) now handles
   HTTP headers delimited by bare LF newlines. (#3833)
 - twisted.web.client.downloadPage now accepts the `afterFoundGet`
   parameter, with the same meaning as the `getPage` parameter of the
   same name. (#4364)
 - twisted.web.xmlrpc.Proxy constructor now takes additional 'timeout'
   and 'reactor' arguments. The 'timeout' argument defaults to 30
   seconds. (#4741)
 - Twisted Web now has a templating system, twisted.web.template,
   which is a direct, simplified derivative of Divmod Nevow. (#4939)

Bugfixes
--------
 - HTTPPageGetter now adds the port to the host header if it is not
   the default for that scheme. (#3857)
 - twisted.web.http.Request.write now raises an exception if it is
   called after response generation has already finished. (#4317)
 - twisted.web.client.HTTPPageGetter and twisted.web.client.getPage
   now no longer make two requests when using afterFoundGet. (#4760)
 - twisted.web.twcgi no longer adds an extra "content-type" header to
   CGI responses. (#4786)
 - twisted.web will now properly specify an encoding (UTF-8) on error,
   redirect, and directory listing pages, so that IE7 and previous
   will not improperly guess the 'utf7' encoding in these cases.
   Please note that Twisted still sets a *default* content-type of
   'text/html', and you shouldn't rely on that: you should set the
   encoding appropriately in your application. (#4900)
 - twisted.web.http.Request.setHost now sets the port in the host
   header if it is not the default. (#4918)
 - default NOT_IMPLEMENTED and NOT_ALLOWED pages now quote the request
   method and URI respectively, to protect against browsers which
   don't quote those values for us. (#4978)

Improved Documentation
----------------------
 - The XML-RPC howto now includes an example demonstrating how to
   access the HTTP request object in a server-side XML-RPC method.
   (#4732)
 - The Twisted Web client howto now uses the correct, public name for
   twisted.web.client.Response. (#4769)
 - Some broken links were fixed, descriptions were updated, and new
   API links were added in the Resource Templating documentation
   (resource-templates.xhtml) (#4968)

Other
-----
 - #2271, #2386, #4162, #4733, #4855, #4911, #4973

Twisted Words 11.0.0 (2011-04-01)
=================================

Features
--------
 - twisted.words.protocols.irc.IRCClient now has an invite method.
   (#4820)

Bugfixes
--------
 - twisted.words.protocols.irc.IRCClient.say is once again able to
   send messages when using the default value for the length limit
   argument. (#4758)
 - twisted.words.protocols.jabber.jstrports is once again able to
   parse jstrport description strings. (#4771)
 - twisted.words.protocols.msn.NotificationClient now calls the
   loginFailure callback when it is unable to connect to the Passport
   server due to missing SSL dependencies. (#4801)
 - twisted.words.protocols.jabber.xmpp_stringprep now always uses
   Unicode version 3.2 for stringprep normalization. (#4850)

Improved Documentation
----------------------
 - Removed the non-working AIM bot example, depending on the obsolete
   twisted.words.protocols.toc functionality. (#4007)
 - Outdated GUI-related information was removed from the IM howto.
   (#4054)

Deprecations and Removals
-------------------------
 - Remove twisted.words.protocols.toc, that was largely non-working
   and useless since AOL disabled TOC on their AIM network. (#4363)

Other
-----
 - #4733, #4902

0 blueprints and 0 bugs targeted

There are no feature specifications or bug tasks targeted to this milestone. The project's maintainer, driver, or bug supervisor can target specifications and bug tasks to this milestone to track the things that are expected to be completed for the release.

This milestone contains Public information
Everyone can see this information.