Merge wsaatf-5430 

Author: PenguinOfDoom, exarkun
Reviewer: glyph
Fixes: #5430

Clean up the ctypes usage in the IPv6 link local interface lookup code for
Windows, fixing a bug on 64 bit Windows where a bad pointer will sometimes
be passed to `WSAAddressToString`.  Make some other changes to try to make
the code more maintainable in general, too.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33367 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge contentdecoderagent-docs-5415 

Author: exarkun
Reviewer: thijs
Fixes: #5415

Add howto documentation and an example for `ContentDecoderAgent`.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33396 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge doc-index-5429

Author: mesozoic
Reviewer: jesstess
Fixes: #5429

Add an index page to the documentation tree and make references to "Twisted Products" within the documentation more consistent.



git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33398 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Fix a typo in the WSGI howto

Author: hynek
Reviewer: exarkun
Fixes: #5438


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33399 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Reject unicode locations early in twisted.web.util.redirectTo

Author: moijes12
Reviewer: exarkun
Fixes: #5236

Raise `TypeError` from `redirectTo` if the supplied URL is `unicode` instead of
`str`.  This replaces the old behavior of returning a `unicode` string in this
case which would later cause a 500 response when lower-level parts of Twisted Web
rejected the non-`str` response body string.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33400 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge win32er-qsallinput-5284

Author: moijes12
Reviewer: exarkun
Fixes: #5284

Remove `QS_ALLEVENTS` from the `MsgWaitForMultipleObjects` call in
`win32eventreactor`, since it is a subset of `QS_ALLINPUT` which is
also being specified.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33404 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge twiddle-5404 

Author: exarkun
Reviewer: thijs
Fixes: #5404

Correct the `Element` example to use the correct tag API (rather than the old
API provided by Nevow).


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33406 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Update comment about the epoll_create argument to reflect more recent Linux's

Author: benjamin
Reviewer: exarkun
Fixes: #5440


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33407 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge enterise-util-4111-2.

Author: thijs, itamar
Review: khorn, exarkun, TimAllen
Fixes: #4108, #4109, #4110, #4111

Remove deprecated code from the enterprise package, along with relevant documentation and examples.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33412 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Hooray for homographs.



git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33416 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge rrheader-auth-5421 

Author: exarkun
Reviewer: glyph
Fixes: #5421

When constructing `RRHeader` instances while parsing a message into a
`twisted.names.dns.Message` instance, set the `auth` flag on the `RRHeader`
instead to match the auth flag on the `Message` instance.

This makes `RRHeader.auth` reflect whether the record is part of an
authoritative message or not.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33417 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge numcharref-5408

Author: exarkun
Reviewer: glyph
Fixes: #5408

Add `twisted.web.template.CharRef`, for producing numeric character references
in documents generated using `twisted.web.template`.

This can be useful to generate pure-ASCII documents which nevertheless
contain non-ASCII characters.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33418 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge pyasn1-skips-5225

Author: moijes12
Reviewer: jesstess
Fixes: #5225

Unify the "PyASN1 missing" skip messages.

Trial can combine reporting for all tests that skip with the same
message, so this makes the output nicer.



git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33428 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge ftpretr-directory-5441

Author: adiroiban
Reviewer: jesstess
Fixes: #5441

Correct a check in FTP.ftp_retr from IsNotADirectoryError to
IsADirectoryError. Now calling RETR on a directory won't be logged as
an unexpected error.



git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33435 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge loopingcall-2725.

Author: jerith
Review: exarkun, itamar
Fixes: #2725

Document the running attribute of LoopingCall.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33440 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge htb-drip-5448

Author: gsk
Review: jesstess
Fixes: #5448

Fix twisted.protocols.htb.Bucket.drip to drip and empty properly with
a non-zero drip rate.



git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33452 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge howto-index-5427-2.

Author: itamar
Review: jesstess, exarkun, thijs
Fixes: #5427, #1712

The core howto index has had many crufty howtos removed, and has been reorganized. Also, the generated PDF should now contain all howtos (it was missing some).

git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33453 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge early-context-error-5449

Author: exarkun
Reviewer: itamar
Fixes: #5449

Change the users of application-supplied SSL context factories to invoke
the `getContext` method early and allow errors to propagate.  This improves
the behavior in the case of broken context factories which cannot produce
a context object by making the error happen closer to where the broken
object is given to Twisted.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33468 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge tls-error-5439.

Author: itamar
Review: exarkun
Fixes: #5439

If a producer is registered on a TLS transport after connection lost, just stop it immediately.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33470 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb
Merge kqueue-1918: Revive kqueue reactor

Author: oberstet
Reviewer: exarkun, glyph
Fixes: #1918

A kqueue()/kevent() based implementation of the Twisted main loop.

This implementation depends on Python 2.6 or higher which has kqueue support
built in the select module.

Note, that you should use Python 2.6.5 or higher, since previous implementations
of select.kqueue had U{http://bugs.python.org/issue5910} not yet fixed.

Note, that on OS X, PTYs will (currently) NOT work due to platform restrictions.


git-svn-id: svn://svn.twistedmatrix.com/svn/Twisted/trunk@33481 bbbe8e31-12d6-0310-92fd-ac37d47ddeeb