Hello everyone! It's time for yet another Twisted release -- although not long after the last, we have had a bunch of good changes from the PyCon sprints, and some long-awaited work has landed!
- The Git migration has happened, so we've updated our development documentation to match. We're now trialling accepting pull requests at github.com/twisted/twisted, so if you've ever wanted an excuse to contribute, now's the chance!
- In our steady shedding of baggage, twisted.spread.ui, twisted.manhole (not to be confused with twisted.conch.manhole!), and a bunch of old and deprecated stuff from twisted.python.reflect and twisted.protocols.sip have been removed.
- twisted.web's HTTP server now handles pipelined requests better -- it used to try and process them in parallel, but this was fraught with problems and now it processes them in series, which is less surprising to code that expects the Request's transport to not be buffered (e.g. WebSockets).
- Twisted now has HTTP/2 support in its web server! This is currently not available by default -- you will need to install hyper-h2, which is available in the [h2] setuptools extras. If you want to play around with it, see the install link below. Upon release, you will be able to simply "pip install twisted[http2]".
- 53 tickets closed overall, including cleanups that move us closer to a total Python 3 port.
For more information, check the NEWS file (link provided below).
As usual, it's available for download -- go here (https://twistedmatrix.com/Releases/pre/16.3.0pre1/) to get the prerelease tarballs and the full NEWS file. If you want to install it right away, run:
pip install https://twistedmatrix.com/Releases/pre/16.3.0pre1/Twisted-16.3.0rc1.tar.bz2
If you would like to try out the newly-landed HTTP/2 support, run:
pip install -U https://twistedmatrix.com/Releases/pre/16.3.0pre1/Twisted-16.3.0rc1.tar.bz2…
This will download the new HTTP/2 dependencies and the TLS requirements as well.
Please let me know if you have any issues, as well as if you don't! If everything works well, that's a good thing for me to know :)
Amber Brown (HawkOwl)