From 30d855cbca8385abefa3ffe95811a2bfaa666cf8 Mon Sep 17 00:00:00 2001 From: Jimmy Huang Date: Fri, 31 Aug 2012 15:21:38 -0700 Subject: [PATCH 1/1] Initial import to Tizen Signed-off-by: Jimmy Huang --- INSTALL | 33 + LICENSE | 57 + NEWS | 3168 ++++++++++ README | 116 + bin/_preamble.py | 19 + bin/conch/cftp | 15 + bin/conch/ckeygen | 15 + bin/conch/conch | 15 + bin/conch/tkconch | 15 + bin/lore/lore | 16 + bin/mail/mailmail | 20 + bin/manhole | 16 + bin/pyhtmlizer | 12 + bin/tap2deb | 16 + bin/tap2rpm | 19 + bin/tapconvert | 12 + bin/trial | 18 + bin/twistd | 14 + doc/conch/benchmarks/README | 15 + doc/conch/benchmarks/buffering_mixin.py | 182 + doc/conch/examples/demo.tac | 25 + doc/conch/examples/demo_draw.tac | 80 + doc/conch/examples/demo_insults.tac | 252 + doc/conch/examples/demo_manhole.tac | 56 + doc/conch/examples/demo_recvline.tac | 77 + doc/conch/examples/demo_scroll.tac | 100 + doc/conch/examples/index.html | 40 + doc/conch/examples/sshsimpleclient.py | 111 + doc/conch/examples/sshsimpleserver.py | 117 + doc/conch/examples/telnet_echo.tac | 47 + doc/conch/examples/window.tac | 202 + doc/conch/howto/conch_client.html | 321 + doc/conch/howto/index.html | 28 + doc/conch/index.html | 25 + doc/conch/man/cftp-man.html | 87 + doc/conch/man/cftp.1 | 89 + doc/conch/man/ckeygen-man.html | 107 + doc/conch/man/ckeygen.1 | 57 + doc/conch/man/conch-man.html | 148 + doc/conch/man/conch.1 | 206 + doc/conch/man/tkconch-man.html | 129 + doc/conch/man/tkconch.1 | 72 + doc/core/benchmarks/banana.py | 10 + doc/core/benchmarks/deferreds.py | 145 + doc/core/benchmarks/failure.py | 66 + doc/core/benchmarks/linereceiver.py | 47 + doc/core/benchmarks/netstringreceiver.py | 242 + doc/core/benchmarks/task.py | 26 + doc/core/benchmarks/timer.py | 24 + doc/core/benchmarks/tpclient.py | 60 + doc/core/benchmarks/tpclient_nt.py | 22 + doc/core/benchmarks/tpserver.py | 19 + doc/core/benchmarks/tpserver_nt.py | 22 + doc/core/development/index.html | 26 + .../development/listings/new_module_template.py | 12 + doc/core/development/naming.html | 38 + doc/core/development/philosophy.html | 58 + doc/core/development/policy/coding-standard.html | 818 +++ doc/core/development/policy/doc-standard.html | 196 + doc/core/development/policy/index.html | 33 + doc/core/development/policy/svn-dev.html | 230 + doc/core/development/policy/test-standard.html | 399 ++ doc/core/development/policy/writing-standard.html | 313 + doc/core/development/security.html | 43 + doc/core/examples/ampclient.py | 26 + doc/core/examples/ampserver.py | 40 + doc/core/examples/bananabench.py | 79 + doc/core/examples/chatserver.py | 37 + doc/core/examples/courier.py | 111 + doc/core/examples/cred.py | 163 + doc/core/examples/dbcred.py | 179 + doc/core/examples/echoclient.py | 41 + doc/core/examples/echoclient_ssl.py | 46 + doc/core/examples/echoclient_udp.py | 38 + doc/core/examples/echoserv.py | 27 + doc/core/examples/echoserv_ssl.py | 30 + doc/core/examples/echoserv_udp.py | 19 + doc/core/examples/filewatch.py | 17 + doc/core/examples/ftpclient.py | 113 + doc/core/examples/ftpserver.py | 55 + doc/core/examples/gpsfix.py | 78 + doc/core/examples/index.html | 125 + doc/core/examples/longex.py | 66 + doc/core/examples/longex2.py | 101 + doc/core/examples/mouse.py | 80 + doc/core/examples/pb_exceptions.py | 36 + doc/core/examples/pbbenchclient.py | 42 + doc/core/examples/pbbenchserver.py | 54 + doc/core/examples/pbecho.py | 51 + doc/core/examples/pbechoclient.py | 32 + doc/core/examples/pbgtk2.py | 122 + doc/core/examples/pbgtk2login.glade | 330 + doc/core/examples/pbinterop.py | 71 + doc/core/examples/pbsimple.py | 16 + doc/core/examples/pbsimpleclient.py | 18 + doc/core/examples/postfix.py | 29 + doc/core/examples/ptyserv.py | 45 + doc/core/examples/pyui_bg.png | Bin 0 -> 29913 bytes doc/core/examples/pyuidemo.py | 39 + doc/core/examples/recvfd.py | 90 + doc/core/examples/rotatinglog.py | 26 + doc/core/examples/sendfd.py | 83 + doc/core/examples/server.pem | 36 + doc/core/examples/shaper.py | 52 + doc/core/examples/shoutcast.py | 26 + doc/core/examples/simple.tac | 39 + doc/core/examples/simpleclient.py | 49 + doc/core/examples/simpleserv.py | 26 + doc/core/examples/stdin.py | 30 + doc/core/examples/stdiodemo.py | 78 + doc/core/examples/streaming.py | 103 + doc/core/examples/testlogging.py | 41 + .../English.lproj/MainMenu.nib/classes.nib | 13 + .../English.lproj/MainMenu.nib/info.nib | 24 + .../English.lproj/MainMenu.nib/keyedobjects.nib | Bin 0 -> 14896 bytes .../Cocoa/SimpleWebClient/README.txt | 6 + .../Cocoa/SimpleWebClient/Twistzilla.py | 79 + .../threadedselect/Cocoa/SimpleWebClient/setup.py | 14 + doc/core/examples/threadedselect/README | 15 + doc/core/examples/threadedselect/blockingdemo.py | 92 + doc/core/examples/threadedselect/pygamedemo.py | 78 + doc/core/examples/tkinterdemo.py | 44 + doc/core/examples/twistd-logging.tac | 33 + doc/core/examples/wxacceptance.py | 113 + doc/core/examples/wxdemo.py | 64 + doc/core/howto/amp.html | 349 ++ doc/core/howto/application.html | 398 ++ doc/core/howto/basics.html | 100 + doc/core/howto/book.tex | 129 + doc/core/howto/choosing-reactor.html | 395 ++ doc/core/howto/clients.html | 741 +++ doc/core/howto/components.html | 603 ++ doc/core/howto/constants.html | 456 ++ doc/core/howto/cred.html | 566 ++ doc/core/howto/debug-with-emacs.html | 65 + doc/core/howto/defer.html | 898 +++ doc/core/howto/design.html | 254 + doc/core/howto/dirdbm.html | 76 + doc/core/howto/endpoints.html | 231 + doc/core/howto/gendefer.html | 411 ++ doc/core/howto/glossary.html | 334 + doc/core/howto/howto.tidyrc | 6 + doc/core/howto/index.html | 239 + doc/core/howto/internet-overview.html | 48 + doc/core/howto/listings/TwistedQuotes/__init__.py | 3 + doc/core/howto/listings/TwistedQuotes/pbquote.py | 10 + .../howto/listings/TwistedQuotes/pbquoteclient.py | 32 + .../howto/listings/TwistedQuotes/quoteproto.py | 36 + doc/core/howto/listings/TwistedQuotes/quoters.py | 39 + doc/core/howto/listings/TwistedQuotes/quotes.txt | 15 + doc/core/howto/listings/TwistedQuotes/quotetap.py | 29 + doc/core/howto/listings/TwistedQuotes/quotetap2.py | 36 + doc/core/howto/listings/TwistedQuotes/webquote.rpy | 12 + doc/core/howto/listings/amp/basic_client.py | 30 + doc/core/howto/listings/amp/basic_server.tac | 14 + doc/core/howto/listings/amp/command_client.py | 48 + doc/core/howto/listings/application/service.tac | 34 + .../howto/listings/deferred/synch-validation.py | 5 + doc/core/howto/listings/pb/cache_classes.py | 43 + doc/core/howto/listings/pb/cache_receiver.py | 28 + doc/core/howto/listings/pb/cache_sender.py | 50 + doc/core/howto/listings/pb/chatclient.py | 42 + doc/core/howto/listings/pb/chatserver.py | 65 + doc/core/howto/listings/pb/copy2_classes.py | 29 + doc/core/howto/listings/pb/copy2_receiver.py | 21 + doc/core/howto/listings/pb/copy2_sender.py | 44 + doc/core/howto/listings/pb/copy_receiver.tac | 41 + doc/core/howto/listings/pb/copy_sender.py | 57 + doc/core/howto/listings/pb/exc_client.py | 33 + doc/core/howto/listings/pb/exc_server.py | 32 + doc/core/howto/listings/pb/pb1client.py | 31 + doc/core/howto/listings/pb/pb1server.py | 20 + doc/core/howto/listings/pb/pb2client.py | 36 + doc/core/howto/listings/pb/pb2server.py | 30 + doc/core/howto/listings/pb/pb3client.py | 26 + doc/core/howto/listings/pb/pb3server.py | 16 + doc/core/howto/listings/pb/pb4client.py | 58 + doc/core/howto/listings/pb/pb5client.py | 22 + doc/core/howto/listings/pb/pb5server.py | 29 + doc/core/howto/listings/pb/pb6client1.py | 22 + doc/core/howto/listings/pb/pb6client2.py | 25 + doc/core/howto/listings/pb/pb6server.py | 30 + doc/core/howto/listings/pb/pb7client.py | 29 + doc/core/howto/listings/pb/pbAnonClient.py | 70 + doc/core/howto/listings/pb/pbAnonServer.py | 91 + doc/core/howto/listings/pb/trap_client.py | 88 + doc/core/howto/listings/pb/trap_server.py | 21 + doc/core/howto/listings/process/process.py | 46 + doc/core/howto/listings/process/quotes.py | 25 + doc/core/howto/listings/process/trueandfalse.py | 14 + doc/core/howto/listings/sendmsg/copy_descriptor.py | 35 + .../howto/listings/sendmsg/send_replacement.py | 21 + doc/core/howto/listings/servers/chat.py | 51 + doc/core/howto/listings/trial/calculus/__init__.py | 0 doc/core/howto/listings/trial/calculus/base_1.py | 16 + doc/core/howto/listings/trial/calculus/base_2.py | 14 + doc/core/howto/listings/trial/calculus/base_3.py | 24 + doc/core/howto/listings/trial/calculus/client_1.py | 39 + doc/core/howto/listings/trial/calculus/client_2.py | 54 + doc/core/howto/listings/trial/calculus/client_3.py | 53 + doc/core/howto/listings/trial/calculus/remote_1.py | 47 + doc/core/howto/listings/trial/calculus/remote_2.py | 51 + .../howto/listings/trial/calculus/test/__init__.py | 0 .../listings/trial/calculus/test/test_base_1.py | 23 + .../listings/trial/calculus/test/test_base_2.py | 29 + .../listings/trial/calculus/test/test_base_2b.py | 29 + .../listings/trial/calculus/test/test_base_3.py | 52 + .../listings/trial/calculus/test/test_client_1.py | 37 + .../listings/trial/calculus/test/test_client_2.py | 48 + .../listings/trial/calculus/test/test_client_3.py | 63 + .../listings/trial/calculus/test/test_remote_1.py | 34 + .../listings/trial/calculus/test/test_remote_2.py | 46 + .../listings/trial/calculus/test/test_remote_3.py | 40 + doc/core/howto/listings/udp/MulticastClient.py | 19 + doc/core/howto/listings/udp/MulticastServer.py | 28 + doc/core/howto/logging.html | 196 + doc/core/howto/options.html | 581 ++ doc/core/howto/pb-clients.html | 362 ++ doc/core/howto/pb-copyable.html | 1185 ++++ doc/core/howto/pb-cred.html | 1724 ++++++ doc/core/howto/pb-intro.html | 320 + doc/core/howto/pb-limits.html | 51 + doc/core/howto/pb-usage.html | 1156 ++++ doc/core/howto/pb.html | 52 + doc/core/howto/plugin.html | 294 + doc/core/howto/process.html | 732 +++ doc/core/howto/producers.html | 90 + doc/core/howto/quotes.html | 214 + doc/core/howto/rdbms.html | 228 + doc/core/howto/reactor-basics.html | 93 + doc/core/howto/sendmsg.html | 221 + doc/core/howto/servers.html | 548 ++ doc/core/howto/ssl.html | 550 ++ doc/core/howto/stylesheet-unprocessed.css | 20 + doc/core/howto/stylesheet.css | 189 + doc/core/howto/tap.html | 323 + doc/core/howto/template.tpl | 23 + doc/core/howto/testing.html | 167 + doc/core/howto/threading.html | 213 + doc/core/howto/time.html | 118 + doc/core/howto/trial.html | 2042 +++++++ doc/core/howto/tutorial/backends.html | 1348 +++++ doc/core/howto/tutorial/client.html | 260 + doc/core/howto/tutorial/components.html | 1132 ++++ doc/core/howto/tutorial/configuration.html | 870 +++ doc/core/howto/tutorial/factory.html | 713 +++ doc/core/howto/tutorial/index.html | 83 + doc/core/howto/tutorial/intro.html | 725 +++ doc/core/howto/tutorial/library.html | 271 + doc/core/howto/tutorial/listings/finger/etc.users | 2 + .../tutorial/listings/finger/finger/__init__.py | 3 + .../tutorial/listings/finger/finger/finger.py | 368 ++ .../howto/tutorial/listings/finger/finger/tap.py | 20 + .../howto/tutorial/listings/finger/finger01.py | 2 + .../howto/tutorial/listings/finger/finger02.py | 10 + .../howto/tutorial/listings/finger/finger03.py | 11 + .../howto/tutorial/listings/finger/finger04.py | 12 + .../howto/tutorial/listings/finger/finger05.py | 13 + .../howto/tutorial/listings/finger/finger06.py | 18 + .../howto/tutorial/listings/finger/finger07.py | 21 + .../howto/tutorial/listings/finger/finger08.py | 30 + .../howto/tutorial/listings/finger/finger09.py | 26 + .../howto/tutorial/listings/finger/finger10.py | 30 + .../howto/tutorial/listings/finger/finger11.tac | 34 + .../howto/tutorial/listings/finger/finger12.tac | 55 + .../howto/tutorial/listings/finger/finger13.tac | 59 + .../howto/tutorial/listings/finger/finger14.tac | 56 + .../howto/tutorial/listings/finger/finger15.tac | 87 + .../howto/tutorial/listings/finger/finger16.tac | 101 + .../howto/tutorial/listings/finger/finger17.tac | 102 + .../howto/tutorial/listings/finger/finger18.tac | 147 + .../howto/tutorial/listings/finger/finger19.tac | 270 + .../howto/tutorial/listings/finger/finger19a.tac | 231 + .../tutorial/listings/finger/finger19a_changes.py | 29 + .../howto/tutorial/listings/finger/finger19b.tac | 292 + .../tutorial/listings/finger/finger19b_changes.py | 19 + .../howto/tutorial/listings/finger/finger19c.tac | 305 + .../tutorial/listings/finger/finger19c_changes.py | 32 + .../howto/tutorial/listings/finger/finger20.tac | 285 + .../howto/tutorial/listings/finger/finger21.tac | 319 + .../howto/tutorial/listings/finger/finger22.py | 337 ++ .../tutorial/listings/finger/fingerPBclient.py | 26 + .../tutorial/listings/finger/fingerXRclient.py | 5 + .../tutorial/listings/finger/finger_config.py | 38 + .../howto/tutorial/listings/finger/fingerproxy.tac | 110 + .../tutorial/listings/finger/organized-finger.tac | 31 + .../tutorial/listings/finger/simple-finger.tac | 17 + .../finger/twisted/plugins/finger_tutorial.py | 5 + doc/core/howto/tutorial/pb.html | 728 +++ doc/core/howto/tutorial/protocol.html | 1121 ++++ doc/core/howto/tutorial/style.html | 333 + doc/core/howto/tutorial/web.html | 610 ++ doc/core/howto/udp.html | 304 + doc/core/howto/vision.html | 43 + doc/core/img/TwistedLogo.bmp | Bin 0 -> 55494 bytes doc/core/img/cred-login.dia | Bin 0 -> 2369 bytes doc/core/img/cred-login.png | Bin 0 -> 34148 bytes doc/core/img/deferred-attach.dia | Bin 0 -> 2234 bytes doc/core/img/deferred-attach.png | Bin 0 -> 9356 bytes doc/core/img/deferred-process.dia | Bin 0 -> 2099 bytes doc/core/img/deferred-process.png | Bin 0 -> 10809 bytes doc/core/img/deferred-states.svg | 3 + doc/core/img/deferred.dia | Bin 0 -> 4348 bytes doc/core/img/deferred.png | Bin 0 -> 33282 bytes doc/core/index.html | 31 + doc/core/man/manhole-man.html | 50 + doc/core/man/manhole.1 | 16 + doc/core/man/pyhtmlizer-man.html | 51 + doc/core/man/pyhtmlizer.1 | 22 + doc/core/man/tap2deb-man.html | 101 + doc/core/man/tap2deb.1 | 55 + doc/core/man/tap2rpm-man.html | 100 + doc/core/man/tap2rpm.1 | 55 + doc/core/man/tapconvert-man.html | 82 + doc/core/man/tapconvert.1 | 40 + doc/core/man/trial-man.html | 275 + doc/core/man/trial.1 | 200 + doc/core/man/twistd-man.html | 187 + doc/core/man/twistd.1 | 118 + doc/core/specifications/banana.html | 199 + doc/core/specifications/index.html | 21 + doc/fun/Twisted.Quotes | 0 doc/fun/lightbulb | 7 + doc/fun/register.html | 77 + .../ipc10/twisted-network-framework/errata.html | 256 + .../ipc10/twisted-network-framework/index.html | 1568 +++++ doc/historic/2003/europython/doanddont.html | 508 ++ doc/historic/2003/europython/index.html | 35 + doc/historic/2003/europython/lore.html | 502 ++ doc/historic/2003/europython/slides-template.tpl | 19 + doc/historic/2003/europython/tw-deploy.html | 1106 ++++ doc/historic/2003/europython/twisted.html | 608 ++ doc/historic/2003/europython/webclients.html | 482 ++ doc/historic/2003/haifux/haifux.html | 2235 +++++++ doc/historic/2003/haifux/notes.html | 60 + doc/historic/2003/pycon/applications/applications | 257 + .../2003/pycon/applications/applications.html | 343 ++ .../2003/pycon/applications/pynfo-chart.png | Bin 0 -> 13018 bytes doc/historic/2003/pycon/conch/conch | 98 + doc/historic/2003/pycon/conch/conch.html | 165 + doc/historic/2003/pycon/conch/conchtalk.txt | 144 + doc/historic/2003/pycon/conch/smalltwisted.png | Bin 0 -> 1472 bytes doc/historic/2003/pycon/conch/twistedlogo.png | Bin 0 -> 7256 bytes .../2003/pycon/deferex/deferex-bad-adding.py | 8 + .../2003/pycon/deferex/deferex-chaining.py | 13 + .../2003/pycon/deferex/deferex-complex-failure.py | 30 + .../2003/pycon/deferex/deferex-complex-raise.py | 12 + .../2003/pycon/deferex/deferex-forwarding.py | 9 + .../2003/pycon/deferex/deferex-listing0.py | 18 + .../2003/pycon/deferex/deferex-listing1.py | 6 + .../2003/pycon/deferex/deferex-listing2.py | 8 + .../2003/pycon/deferex/deferex-simple-failure.py | 9 + .../2003/pycon/deferex/deferex-simple-raise.py | 3 + doc/historic/2003/pycon/deferex/deferex.html | 499 ++ doc/historic/2003/pycon/deferex/deferexex.py | 16 + .../intrinsics-lightning/intrinsics-lightning | 97 + doc/historic/2003/pycon/lore/lore-presentation | 108 + doc/historic/2003/pycon/lore/lore-slides.html | 187 + doc/historic/2003/pycon/lore/lore.html | 791 +++ doc/historic/2003/pycon/pb/pb-client1.py | 46 + doc/historic/2003/pycon/pb/pb-server1.py | 16 + doc/historic/2003/pycon/pb/pb-slides.py | 240 + doc/historic/2003/pycon/pb/pb.html | 966 +++ .../2003/pycon/releasing/releasing-twisted | 151 + doc/historic/2003/pycon/releasing/releasing.html | 491 ++ doc/historic/2003/pycon/tw-deploy/tw-deploy | 184 + .../2003/pycon/tw-deploy/twisted-overview.png | Bin 0 -> 12722 bytes doc/historic/2003/pycon/tw-deploy/twistedlogo.png | Bin 0 -> 7256 bytes .../pycon/twisted-internet/twisted-internet.py | 541 ++ .../2003/pycon/twisted-reality/componentized.svg | 254 + .../pycon/twisted-reality/twisted-reality.html | 578 ++ doc/historic/2004/ibm/talk.html | 495 ++ doc/historic/FirstTenYears.Quotes | 5816 ++++++++++++++++++ doc/historic/Twisted-12.1.0.Quotes | 24 + doc/historic/index.html | 128 + doc/historic/ipc10errata.html | 256 + doc/historic/ipc10paper.html | 1568 +++++ doc/historic/stylesheet.css | 178 + doc/historic/template-notoc.tpl | 14 + doc/historic/template.tpl | 20 + doc/historic/twisted-debian.html | 96 + doc/index.xhtml | 115 + doc/lore/examples/example.html | 60 + doc/lore/examples/index.html | 22 + doc/lore/examples/slides-template.tpl | 21 + doc/lore/howto/extend-lore.html | 427 ++ doc/lore/howto/index.html | 23 + doc/lore/howto/listings/lore/1st_example.html | 12 + doc/lore/howto/listings/lore/a_lore_plugin.py | 11 + doc/lore/howto/listings/lore/factory.py-1 | 9 + doc/lore/howto/listings/lore/factory.py-2 | 20 + doc/lore/howto/listings/lore/factory.py-3 | 21 + doc/lore/howto/listings/lore/spitters.py-1 | 18 + doc/lore/howto/listings/lore/spitters.py-2 | 26 + doc/lore/howto/lore.html | 369 ++ doc/lore/img/myhtml-output.png | Bin 0 -> 23124 bytes doc/lore/index.html | 25 + doc/lore/man/lore-man.html | 124 + doc/lore/man/lore.1 | 74 + doc/mail/examples/emailserver.tac | 107 + doc/mail/examples/imap4client.py | 181 + doc/mail/examples/index.html | 36 + doc/mail/examples/smtpclient_simple.py | 47 + doc/mail/examples/smtpclient_tls.py | 157 + doc/mail/index.html | 25 + doc/mail/man/mailmail-man.html | 55 + doc/mail/man/mailmail.1 | 21 + doc/mail/tutorial/smtpclient/smtpclient-1.tac | 3 + doc/mail/tutorial/smtpclient/smtpclient-10.tac | 56 + doc/mail/tutorial/smtpclient/smtpclient-11.tac | 58 + doc/mail/tutorial/smtpclient/smtpclient-2.tac | 10 + doc/mail/tutorial/smtpclient/smtpclient-3.tac | 10 + doc/mail/tutorial/smtpclient/smtpclient-4.tac | 12 + doc/mail/tutorial/smtpclient/smtpclient-5.tac | 14 + doc/mail/tutorial/smtpclient/smtpclient-6.tac | 18 + doc/mail/tutorial/smtpclient/smtpclient-7.tac | 46 + doc/mail/tutorial/smtpclient/smtpclient-8.tac | 49 + doc/mail/tutorial/smtpclient/smtpclient-9.tac | 53 + doc/mail/tutorial/smtpclient/smtpclient.html | 757 +++ doc/mail/tutorial/smtpserver/smtpserver-1.tac | 3 + doc/mail/tutorial/smtpserver/smtpserver-2.tac | 10 + doc/mail/tutorial/smtpserver/smtpserver-3.tac | 12 + doc/mail/tutorial/smtpserver/smtpserver-4.tac | 14 + doc/mail/tutorial/smtpserver/smtpserver-5.tac | 50 + doc/mail/tutorial/smtpserver/smtpserver-6.tac | 57 + doc/mail/tutorial/smtpserver/smtpserver-7.tac | 57 + doc/mail/tutorial/smtpserver/smtpserver-8.tac | 63 + doc/names/examples/dns-service.py | 45 + doc/names/examples/gethostbyname.py | 28 + doc/names/examples/index.html | 24 + doc/names/examples/testdns.py | 48 + doc/names/howto/index.html | 22 + doc/names/howto/listings/names/example-domain.com | 37 + doc/names/howto/names.html | 134 + doc/names/index.html | 25 + doc/pair/examples/index.html | 23 + doc/pair/examples/pairudp.py | 21 + doc/pair/howto/index.html | 27 + doc/pair/howto/twisted-pair.html | 79 + doc/pair/index.html | 25 + doc/stylesheet.css | 189 + doc/web/examples/advogato.py | 46 + doc/web/examples/dlpage.py | 23 + doc/web/examples/fortune.rpy.py | 49 + doc/web/examples/getpage.py | 20 + doc/web/examples/google.py | 21 + doc/web/examples/hello.rpy.py | 38 + doc/web/examples/httpclient.py | 72 + doc/web/examples/index.html | 100 + doc/web/examples/lj.rpy.py | 48 + doc/web/examples/logging-proxy.py | 45 + doc/web/examples/proxy.py | 26 + doc/web/examples/report.rpy.py | 44 + doc/web/examples/reverse-proxy.py | 18 + doc/web/examples/rootscript.py | 41 + doc/web/examples/silly-web.py | 28 + doc/web/examples/simple.rtl | 32 + doc/web/examples/soap.py | 44 + doc/web/examples/users.rpy.py | 24 + doc/web/examples/web.py | 29 + doc/web/examples/webguard.py | 64 + doc/web/examples/xmlrpc.py | 80 + doc/web/examples/xmlrpcclient.py | 31 + doc/web/howto/client.html | 1088 ++++ doc/web/howto/glossary.html | 42 + doc/web/howto/index.html | 52 + doc/web/howto/listings/client/cookies.py | 25 + doc/web/howto/listings/client/filesendbody.py | 26 + doc/web/howto/listings/client/gzipdecoder.py | 43 + doc/web/howto/listings/client/request.py | 21 + doc/web/howto/listings/client/response.py | 47 + doc/web/howto/listings/client/sendbody.py | 24 + doc/web/howto/listings/client/stringprod.py | 21 + doc/web/howto/listings/element_1.py | 13 + doc/web/howto/listings/element_2.py | 13 + doc/web/howto/listings/element_3.py | 13 + doc/web/howto/listings/iteration-1.py | 17 + doc/web/howto/listings/iteration-1.xml | 3 + doc/web/howto/listings/iteration-output-1.xml | 3 + doc/web/howto/listings/output-1.html | 9 + doc/web/howto/listings/output-2.html | 9 + doc/web/howto/listings/output-3.html | 9 + doc/web/howto/listings/quoting-output.html | 9 + doc/web/howto/listings/quoting_element.py | 13 + doc/web/howto/listings/render_1.py | 5 + doc/web/howto/listings/render_2.py | 5 + doc/web/howto/listings/render_3.py | 5 + doc/web/howto/listings/render_quoting.py | 5 + doc/web/howto/listings/render_slots_attrs.py | 5 + doc/web/howto/listings/render_transparent.py | 5 + doc/web/howto/listings/slots-attributes-1.xml | 6 + .../howto/listings/slots-attributes-output.html | 4 + doc/web/howto/listings/slots_attributes_1.py | 12 + doc/web/howto/listings/soap.rpy | 13 + doc/web/howto/listings/subviews-1.py | 27 + doc/web/howto/listings/subviews-1.xml | 3 + doc/web/howto/listings/subviews-output-1.xml | 3 + doc/web/howto/listings/template-1.xml | 9 + doc/web/howto/listings/transparent-1.xml | 6 + doc/web/howto/listings/transparent-output.html | 5 + doc/web/howto/listings/transparent_element.py | 13 + doc/web/howto/listings/wait_for_it.py | 32 + doc/web/howto/listings/waited-for-it.html | 8 + doc/web/howto/listings/waited-for-it.txt | 8 + doc/web/howto/listings/webquote.rtl | 20 + doc/web/howto/listings/xmlAndSoapQuote.py | 25 + doc/web/howto/listings/xmlquote.rpy | 12 + doc/web/howto/listings/xmlrpc-customized.py | 60 + doc/web/howto/resource-templates.html | 108 + doc/web/howto/twisted-templates.html | 704 +++ doc/web/howto/using-twistedweb.html | 1074 ++++ doc/web/howto/web-development.html | 107 + doc/web/howto/web-in-60/asynchronous-deferred.html | 173 + doc/web/howto/web-in-60/asynchronous.html | 128 + doc/web/howto/web-in-60/custom-codes.html | 116 + doc/web/howto/web-in-60/dynamic-content.html | 124 + doc/web/howto/web-in-60/dynamic-dispatch.html | 143 + doc/web/howto/web-in-60/error-handling.html | 130 + doc/web/howto/web-in-60/handling-posts.html | 142 + doc/web/howto/web-in-60/http-auth.html | 256 + doc/web/howto/web-in-60/index.html | 44 + doc/web/howto/web-in-60/interrupted.html | 147 + doc/web/howto/web-in-60/logging-errors.html | 107 + doc/web/howto/web-in-60/rpy-scripts.html | 90 + doc/web/howto/web-in-60/session-basics.html | 121 + doc/web/howto/web-in-60/session-endings.html | 170 + doc/web/howto/web-in-60/session-store.html | 181 + doc/web/howto/web-in-60/static-content.html | 102 + doc/web/howto/web-in-60/static-dispatch.html | 119 + doc/web/howto/web-in-60/wsgi.html | 125 + doc/web/howto/web-overview.html | 67 + doc/web/howto/xmlrpc.html | 651 ++ doc/web/img/controller.png | Bin 0 -> 14934 bytes doc/web/img/livepage.png | Bin 0 -> 9363 bytes doc/web/img/model.png | Bin 0 -> 14971 bytes doc/web/img/plone_root_model.png | Bin 0 -> 11214 bytes doc/web/img/view.png | Bin 0 -> 14703 bytes doc/web/img/web-overview.dia | Bin 0 -> 1630 bytes doc/web/img/web-overview.png | Bin 0 -> 7330 bytes doc/web/img/web-process.png | Bin 0 -> 30404 bytes doc/web/img/web-process.svg | 594 ++ doc/web/img/web-session.png | Bin 0 -> 8966 bytes doc/web/img/web-widgets.dia | Bin 0 -> 1326 bytes doc/web/img/web-widgets.png | Bin 0 -> 3147 bytes doc/web/index.html | 25 + doc/words/examples/cursesclient.py | 188 + doc/words/examples/index.html | 29 + doc/words/examples/ircLogBot.py | 158 + doc/words/examples/jabber_client.py | 29 + doc/words/examples/minchat.py | 140 + doc/words/examples/msn_example.py | 67 + doc/words/examples/oscardemo.py | 100 + doc/words/examples/pb_client.py | 102 + doc/words/examples/xmpp_client.py | 82 + doc/words/howto/im.html | 98 + doc/words/howto/index.html | 22 + doc/words/index.html | 25 + packaging/python-twisted.changes | 2 + packaging/python-twisted.spec | 63 + setup.py | 105 + twisted/__init__.py | 24 + twisted/_version.py | 3 + twisted/application/__init__.py | 7 + twisted/application/app.py | 674 +++ twisted/application/internet.py | 408 ++ twisted/application/reactors.py | 83 + twisted/application/service.py | 413 ++ twisted/application/strports.py | 103 + twisted/application/test/__init__.py | 6 + twisted/application/test/test_internet.py | 252 + twisted/conch/__init__.py | 18 + twisted/conch/_version.py | 3 + twisted/conch/avatar.py | 37 + twisted/conch/checkers.py | 308 + twisted/conch/client/__init__.py | 9 + twisted/conch/client/agent.py | 73 + twisted/conch/client/connect.py | 21 + twisted/conch/client/default.py | 256 + twisted/conch/client/direct.py | 107 + twisted/conch/client/knownhosts.py | 478 ++ twisted/conch/client/options.py | 96 + twisted/conch/error.py | 102 + twisted/conch/insults/__init__.py | 16 + twisted/conch/insults/client.py | 138 + twisted/conch/insults/colors.py | 29 + twisted/conch/insults/helper.py | 450 ++ twisted/conch/insults/insults.py | 1087 ++++ twisted/conch/insults/text.py | 186 + twisted/conch/insults/window.py | 868 +++ twisted/conch/interfaces.py | 402 ++ twisted/conch/ls.py | 75 + twisted/conch/manhole.py | 340 ++ twisted/conch/manhole_ssh.py | 146 + twisted/conch/manhole_tap.py | 124 + twisted/conch/mixin.py | 49 + twisted/conch/openssh_compat/__init__.py | 11 + twisted/conch/openssh_compat/factory.py | 73 + twisted/conch/openssh_compat/primes.py | 26 + twisted/conch/recvline.py | 329 + twisted/conch/scripts/__init__.py | 1 + twisted/conch/scripts/cftp.py | 832 +++ twisted/conch/scripts/ckeygen.py | 190 + twisted/conch/scripts/conch.py | 512 ++ twisted/conch/scripts/tkconch.py | 576 ++ twisted/conch/ssh/__init__.py | 10 + twisted/conch/ssh/agent.py | 294 + twisted/conch/ssh/channel.py | 281 + twisted/conch/ssh/common.py | 117 + twisted/conch/ssh/connection.py | 637 ++ twisted/conch/ssh/factory.py | 141 + twisted/conch/ssh/filetransfer.py | 934 +++ twisted/conch/ssh/forwarding.py | 181 + twisted/conch/ssh/keys.py | 780 +++ twisted/conch/ssh/service.py | 48 + twisted/conch/ssh/session.py | 348 ++ twisted/conch/ssh/sexpy.py | 42 + twisted/conch/ssh/transport.py | 1591 +++++ twisted/conch/ssh/userauth.py | 846 +++ twisted/conch/stdio.py | 95 + twisted/conch/tap.py | 87 + twisted/conch/telnet.py | 1086 ++++ twisted/conch/test/__init__.py | 1 + twisted/conch/test/keydata.py | 174 + twisted/conch/test/test_agent.py | 399 ++ twisted/conch/test/test_cftp.py | 975 +++ twisted/conch/test/test_channel.py | 279 + twisted/conch/test/test_checkers.py | 609 ++ twisted/conch/test/test_ckeygen.py | 80 + twisted/conch/test/test_conch.py | 552 ++ twisted/conch/test/test_connection.py | 730 +++ twisted/conch/test/test_default.py | 171 + twisted/conch/test/test_filetransfer.py | 765 +++ twisted/conch/test/test_helper.py | 560 ++ twisted/conch/test/test_insults.py | 496 ++ twisted/conch/test/test_keys.py | 488 ++ twisted/conch/test/test_knownhosts.py | 979 +++ twisted/conch/test/test_manhole.py | 372 ++ twisted/conch/test/test_mixin.py | 47 + twisted/conch/test/test_openssh_compat.py | 102 + twisted/conch/test/test_recvline.py | 706 +++ twisted/conch/test/test_scripts.py | 82 + twisted/conch/test/test_session.py | 1256 ++++ twisted/conch/test/test_ssh.py | 995 +++ twisted/conch/test/test_tap.py | 173 + twisted/conch/test/test_telnet.py | 767 +++ twisted/conch/test/test_text.py | 101 + twisted/conch/test/test_transport.py | 2196 +++++++ twisted/conch/test/test_userauth.py | 1062 ++++ twisted/conch/test/test_window.py | 67 + twisted/conch/topfiles/NEWS | 391 ++ twisted/conch/topfiles/README | 11 + twisted/conch/topfiles/setup.py | 48 + twisted/conch/ttymodes.py | 121 + twisted/conch/ui/__init__.py | 11 + twisted/conch/ui/ansi.py | 240 + twisted/conch/ui/tkvt100.py | 197 + twisted/conch/unix.py | 457 ++ twisted/copyright.py | 39 + twisted/cred/__init__.py | 13 + twisted/cred/_digest.py | 129 + twisted/cred/checkers.py | 268 + twisted/cred/credentials.py | 483 ++ twisted/cred/error.py | 41 + twisted/cred/pamauth.py | 79 + twisted/cred/portal.py | 121 + twisted/cred/strcred.py | 270 + twisted/enterprise/__init__.py | 9 + twisted/enterprise/adbapi.py | 483 ++ twisted/internet/__init__.py | 12 + twisted/internet/_baseprocess.py | 62 + twisted/internet/_dumbwin32proc.py | 388 ++ twisted/internet/_glibbase.py | 387 ++ twisted/internet/_newtls.py | 270 + twisted/internet/_oldtls.py | 381 ++ twisted/internet/_pollingfile.py | 300 + twisted/internet/_posixserialport.py | 74 + twisted/internet/_posixstdio.py | 175 + twisted/internet/_sigchld.c | 101 + twisted/internet/_signals.py | 184 + twisted/internet/_ssl.py | 32 + twisted/internet/_sslverify.py | 749 +++ twisted/internet/_threadedselect.py | 367 ++ twisted/internet/_win32serialport.py | 126 + twisted/internet/_win32stdio.py | 124 + twisted/internet/abstract.py | 517 ++ twisted/internet/address.py | 146 + twisted/internet/base.py | 1190 ++++ twisted/internet/cfreactor.py | 501 ++ twisted/internet/default.py | 56 + twisted/internet/defer.py | 1561 +++++ twisted/internet/endpoints.py | 1202 ++++ twisted/internet/epollreactor.py | 394 ++ twisted/internet/error.py | 448 ++ twisted/internet/fdesc.py | 118 + twisted/internet/gireactor.py | 139 + twisted/internet/glib2reactor.py | 44 + twisted/internet/gtk2reactor.py | 114 + twisted/internet/gtk3reactor.py | 65 + twisted/internet/gtkreactor.py | 250 + twisted/internet/inotify.py | 405 ++ twisted/internet/interfaces.py | 2049 +++++++ twisted/internet/iocpreactor/__init__.py | 10 + twisted/internet/iocpreactor/abstract.py | 400 ++ twisted/internet/iocpreactor/build.bat | 4 + twisted/internet/iocpreactor/const.py | 26 + twisted/internet/iocpreactor/interfaces.py | 47 + .../internet/iocpreactor/iocpsupport/acceptex.pxi | 46 + .../internet/iocpreactor/iocpsupport/connectex.pxi | 47 + .../internet/iocpreactor/iocpsupport/iocpsupport.c | 6376 ++++++++++++++++++++ .../iocpreactor/iocpsupport/iocpsupport.pyx | 312 + .../iocpreactor/iocpsupport/winsock_pointers.c | 62 + .../iocpreactor/iocpsupport/winsock_pointers.h | 51 + .../internet/iocpreactor/iocpsupport/wsarecv.pxi | 76 + .../internet/iocpreactor/iocpsupport/wsasend.pxi | 30 + twisted/internet/iocpreactor/notes.txt | 24 + twisted/internet/iocpreactor/reactor.py | 275 + twisted/internet/iocpreactor/setup.py | 23 + twisted/internet/iocpreactor/tcp.py | 578 ++ twisted/internet/iocpreactor/udp.py | 382 ++ twisted/internet/kqreactor.py | 305 + twisted/internet/main.py | 35 + twisted/internet/pollreactor.py | 187 + twisted/internet/posixbase.py | 640 ++ twisted/internet/process.py | 1068 ++++ twisted/internet/protocol.py | 830 +++ twisted/internet/pyuisupport.py | 37 + twisted/internet/qtreactor.py | 19 + twisted/internet/reactor.py | 38 + twisted/internet/selectreactor.py | 203 + twisted/internet/serialport.py | 87 + twisted/internet/ssl.py | 203 + twisted/internet/stdio.py | 32 + twisted/internet/task.py | 789 +++ twisted/internet/tcp.py | 1130 ++++ twisted/internet/test/__init__.py | 6 + twisted/internet/test/_posixifaces.py | 131 + twisted/internet/test/_win32ifaces.py | 119 + twisted/internet/test/connectionmixins.py | 649 ++ twisted/internet/test/fake_CAs/not-a-certificate | 1 + twisted/internet/test/fake_CAs/thing1.pem | 26 + .../internet/test/fake_CAs/thing2-duplicate.pem | 26 + twisted/internet/test/fake_CAs/thing2.pem | 26 + twisted/internet/test/fakeendpoint.py | 66 + twisted/internet/test/inlinecb_tests.py | 92 + twisted/internet/test/process_helper.py | 33 + twisted/internet/test/reactormixins.py | 409 ++ twisted/internet/test/test_abstract.py | 56 + twisted/internet/test/test_address.py | 292 + twisted/internet/test/test_base.py | 272 + twisted/internet/test/test_baseprocess.py | 73 + twisted/internet/test/test_core.py | 331 + twisted/internet/test/test_default.py | 83 + twisted/internet/test/test_endpoints.py | 1646 +++++ twisted/internet/test/test_epollreactor.py | 246 + twisted/internet/test/test_fdset.py | 394 ++ twisted/internet/test/test_filedescriptor.py | 41 + twisted/internet/test/test_glibbase.py | 66 + twisted/internet/test/test_gtk3reactor.py | 152 + twisted/internet/test/test_gtkreactor.py | 95 + twisted/internet/test/test_inlinecb.py | 13 + twisted/internet/test/test_inotify.py | 504 ++ twisted/internet/test/test_interfaces.py | 53 + twisted/internet/test/test_iocp.py | 150 + twisted/internet/test/test_main.py | 38 + twisted/internet/test/test_newtls.py | 194 + twisted/internet/test/test_pollingfile.py | 46 + twisted/internet/test/test_posixbase.py | 387 ++ twisted/internet/test/test_posixprocess.py | 340 ++ twisted/internet/test/test_process.py | 711 +++ twisted/internet/test/test_protocol.py | 357 ++ twisted/internet/test/test_qtreactor.py | 35 + twisted/internet/test/test_serialport.py | 72 + twisted/internet/test/test_sigchld.py | 194 + twisted/internet/test/test_socket.py | 96 + twisted/internet/test/test_stdio.py | 195 + twisted/internet/test/test_tcp.py | 1943 ++++++ twisted/internet/test/test_threads.py | 215 + twisted/internet/test/test_time.py | 61 + twisted/internet/test/test_tls.py | 432 ++ twisted/internet/test/test_udp.py | 194 + twisted/internet/test/test_udp_internals.py | 165 + twisted/internet/test/test_unix.py | 554 ++ twisted/internet/test/test_win32events.py | 183 + twisted/internet/threads.py | 123 + twisted/internet/tksupport.py | 75 + twisted/internet/udp.py | 347 ++ twisted/internet/unix.py | 518 ++ twisted/internet/utils.py | 219 + twisted/internet/win32eventreactor.py | 430 ++ twisted/internet/wxreactor.py | 184 + twisted/internet/wxsupport.py | 61 + twisted/lore/__init__.py | 21 + twisted/lore/_version.py | 3 + twisted/lore/default.py | 56 + twisted/lore/docbook.py | 68 + twisted/lore/htmlbook.py | 47 + twisted/lore/indexer.py | 50 + twisted/lore/latex.py | 463 ++ twisted/lore/lint.py | 204 + twisted/lore/lmath.py | 85 + twisted/lore/man2lore.py | 295 + twisted/lore/numberer.py | 33 + twisted/lore/process.py | 120 + twisted/lore/scripts/__init__.py | 1 + twisted/lore/scripts/lore.py | 155 + twisted/lore/slides.py | 359 ++ twisted/lore/template.mgp | 24 + twisted/lore/test/__init__.py | 1 + twisted/lore/test/lore_index_file_out.html | 2 + .../lore/test/lore_index_file_out_multiple.html | 5 + .../lore/test/lore_index_file_unnumbered_out.html | 2 + twisted/lore/test/lore_index_test.xhtml | 21 + twisted/lore/test/lore_index_test2.xhtml | 22 + twisted/lore/test/lore_numbering_test_out.html | 2 + twisted/lore/test/lore_numbering_test_out2.html | 2 + twisted/lore/test/simple.html | 9 + twisted/lore/test/simple3.html | 9 + twisted/lore/test/simple4.html | 9 + twisted/lore/test/template.tpl | 13 + twisted/lore/test/test_docbook.py | 35 + twisted/lore/test/test_latex.py | 146 + twisted/lore/test/test_lint.py | 132 + twisted/lore/test/test_lmath.py | 72 + twisted/lore/test/test_lore.py | 1198 ++++ twisted/lore/test/test_man2lore.py | 169 + twisted/lore/test/test_scripts.py | 27 + twisted/lore/test/test_slides.py | 85 + twisted/lore/texi.py | 109 + twisted/lore/topfiles/NEWS | 155 + twisted/lore/topfiles/README | 3 + twisted/lore/topfiles/setup.py | 29 + twisted/lore/tree.py | 1122 ++++ twisted/lore/xhtml-lat1.ent | 196 + twisted/lore/xhtml-special.ent | 80 + twisted/lore/xhtml-symbol.ent | 237 + twisted/lore/xhtml1-strict.dtd | 978 +++ twisted/lore/xhtml1-transitional.dtd | 1201 ++++ twisted/mail/__init__.py | 15 + twisted/mail/_version.py | 3 + twisted/mail/alias.py | 435 ++ twisted/mail/bounce.py | 60 + twisted/mail/imap4.py | 5854 ++++++++++++++++++ twisted/mail/mail.py | 333 + twisted/mail/maildir.py | 518 ++ twisted/mail/pb.py | 115 + twisted/mail/pop3.py | 1071 ++++ twisted/mail/pop3client.py | 706 +++ twisted/mail/protocols.py | 225 + twisted/mail/relay.py | 114 + twisted/mail/relaymanager.py | 631 ++ twisted/mail/scripts/__init__.py | 1 + twisted/mail/scripts/mailmail.py | 366 ++ twisted/mail/smtp.py | 1934 ++++++ twisted/mail/tap.py | 349 ++ twisted/mail/test/__init__.py | 1 + twisted/mail/test/pop3testserver.py | 314 + twisted/mail/test/rfc822.message | 86 + twisted/mail/test/test_bounce.py | 32 + twisted/mail/test/test_imap.py | 4489 ++++++++++++++ twisted/mail/test/test_mail.py | 2039 +++++++ twisted/mail/test/test_mailmail.py | 75 + twisted/mail/test/test_options.py | 255 + twisted/mail/test/test_pop3.py | 1069 ++++ twisted/mail/test/test_pop3client.py | 582 ++ twisted/mail/test/test_scripts.py | 18 + twisted/mail/test/test_smtp.py | 1520 +++++ twisted/mail/topfiles/NEWS | 289 + twisted/mail/topfiles/README | 6 + twisted/mail/topfiles/setup.py | 50 + twisted/manhole/__init__.py | 8 + twisted/manhole/_inspectro.py | 369 ++ twisted/manhole/explorer.py | 654 ++ twisted/manhole/gladereactor.glade | 342 ++ twisted/manhole/gladereactor.py | 219 + twisted/manhole/inspectro.glade | 510 ++ twisted/manhole/logview.glade | 39 + twisted/manhole/service.py | 399 ++ twisted/manhole/telnet.py | 117 + twisted/manhole/test/__init__.py | 6 + twisted/manhole/test/test_explorer.py | 102 + twisted/manhole/ui/__init__.py | 7 + twisted/manhole/ui/gtk2manhole.glade | 268 + twisted/manhole/ui/gtk2manhole.py | 375 ++ twisted/manhole/ui/test/__init__.py | 4 + twisted/manhole/ui/test/test_gtk2manhole.py | 48 + twisted/names/__init__.py | 7 + twisted/names/_version.py | 3 + twisted/names/authority.py | 333 + twisted/names/cache.py | 116 + twisted/names/client.py | 955 +++ twisted/names/common.py | 278 + twisted/names/dns.py | 1949 ++++++ twisted/names/error.py | 95 + twisted/names/hosts.py | 157 + twisted/names/resolve.py | 59 + twisted/names/root.py | 446 ++ twisted/names/secondary.py | 179 + twisted/names/server.py | 205 + twisted/names/srvconnect.py | 186 + twisted/names/tap.py | 150 + twisted/names/test/__init__.py | 1 + twisted/names/test/test_cache.py | 109 + twisted/names/test/test_client.py | 678 +++ twisted/names/test/test_common.py | 71 + twisted/names/test/test_dns.py | 1485 +++++ twisted/names/test/test_hosts.py | 232 + twisted/names/test/test_names.py | 956 +++ twisted/names/test/test_rootresolve.py | 705 +++ twisted/names/test/test_srvconnect.py | 133 + twisted/names/test/test_tap.py | 99 + twisted/names/topfiles/NEWS | 230 + twisted/names/topfiles/README | 3 + twisted/names/topfiles/setup.py | 50 + twisted/news/__init__.py | 11 + twisted/news/_version.py | 3 + twisted/news/database.py | 1051 ++++ twisted/news/news.py | 90 + twisted/news/nntp.py | 1036 ++++ twisted/news/tap.py | 138 + twisted/news/test/__init__.py | 1 + twisted/news/test/test_database.py | 224 + twisted/news/test/test_news.py | 107 + twisted/news/test/test_nntp.py | 197 + twisted/news/topfiles/NEWS | 106 + twisted/news/topfiles/README | 4 + twisted/news/topfiles/setup.py | 28 + twisted/pair/__init__.py | 20 + twisted/pair/_version.py | 3 + twisted/pair/ethernet.py | 56 + twisted/pair/ip.py | 72 + twisted/pair/raw.py | 35 + twisted/pair/rawudp.py | 55 + twisted/pair/test/__init__.py | 1 + twisted/pair/test/test_ethernet.py | 226 + twisted/pair/test/test_ip.py | 417 ++ twisted/pair/test/test_rawudp.py | 327 + twisted/pair/topfiles/NEWS | 56 + twisted/pair/topfiles/README | 4 + twisted/pair/topfiles/setup.py | 28 + twisted/pair/tuntap.py | 170 + twisted/persisted/__init__.py | 6 + twisted/persisted/aot.py | 560 ++ twisted/persisted/crefutil.py | 163 + twisted/persisted/dirdbm.py | 358 ++ twisted/persisted/sob.py | 227 + twisted/persisted/styles.py | 262 + twisted/persisted/test/__init__.py | 6 + twisted/persisted/test/test_styles.py | 55 + twisted/plugin.py | 255 + twisted/plugins/__init__.py | 17 + twisted/plugins/cred_anonymous.py | 40 + twisted/plugins/cred_file.py | 60 + twisted/plugins/cred_memory.py | 68 + twisted/plugins/cred_sshkeys.py | 51 + twisted/plugins/cred_unix.py | 138 + twisted/plugins/twisted_conch.py | 18 + twisted/plugins/twisted_core.py | 6 + twisted/plugins/twisted_ftp.py | 10 + twisted/plugins/twisted_inet.py | 10 + twisted/plugins/twisted_lore.py | 38 + twisted/plugins/twisted_mail.py | 10 + twisted/plugins/twisted_manhole.py | 10 + twisted/plugins/twisted_names.py | 10 + twisted/plugins/twisted_news.py | 10 + twisted/plugins/twisted_portforward.py | 10 + twisted/plugins/twisted_qtstub.py | 45 + twisted/plugins/twisted_reactors.py | 42 + twisted/plugins/twisted_runner.py | 10 + twisted/plugins/twisted_socks.py | 10 + twisted/plugins/twisted_telnet.py | 10 + twisted/plugins/twisted_trial.py | 59 + twisted/plugins/twisted_web.py | 11 + twisted/plugins/twisted_words.py | 43 + twisted/protocols/__init__.py | 7 + twisted/protocols/amp.py | 2705 +++++++++ twisted/protocols/basic.py | 939 +++ twisted/protocols/dict.py | 362 ++ twisted/protocols/finger.py | 42 + twisted/protocols/ftp.py | 2953 +++++++++ twisted/protocols/gps/__init__.py | 1 + twisted/protocols/gps/nmea.py | 209 + twisted/protocols/gps/rockwell.py | 268 + twisted/protocols/htb.py | 269 + twisted/protocols/ident.py | 235 + twisted/protocols/loopback.py | 372 ++ twisted/protocols/memcache.py | 758 +++ twisted/protocols/mice/__init__.py | 1 + twisted/protocols/mice/mouseman.py | 127 + twisted/protocols/pcp.py | 204 + twisted/protocols/policies.py | 725 +++ twisted/protocols/portforward.py | 87 + twisted/protocols/postfix.py | 112 + twisted/protocols/shoutcast.py | 111 + twisted/protocols/sip.py | 1334 ++++ twisted/protocols/socks.py | 240 + twisted/protocols/stateful.py | 52 + twisted/protocols/telnet.py | 325 + twisted/protocols/test/__init__.py | 6 + twisted/protocols/test/test_tls.py | 1474 +++++ twisted/protocols/tls.py | 609 ++ twisted/protocols/wire.py | 90 + twisted/python/__init__.py | 13 + twisted/python/_epoll.c | 3348 ++++++++++ twisted/python/_epoll.pyx | 285 + twisted/python/_initgroups.c | 66 + twisted/python/_inotify.py | 101 + twisted/python/_release.py | 1369 +++++ twisted/python/_shellcomp.py | 668 ++ twisted/python/compat.py | 177 + twisted/python/components.py | 438 ++ twisted/python/constants.py | 377 ++ twisted/python/context.py | 133 + twisted/python/deprecate.py | 534 ++ twisted/python/dist.py | 401 ++ twisted/python/failure.py | 650 ++ twisted/python/fakepwd.py | 219 + twisted/python/filepath.py | 1444 +++++ twisted/python/finalize.py | 46 + twisted/python/formmethod.py | 363 ++ twisted/python/hashlib.py | 24 + twisted/python/hook.py | 177 + twisted/python/htmlizer.py | 91 + twisted/python/lockfile.py | 214 + twisted/python/log.py | 706 +++ twisted/python/logfile.py | 323 + twisted/python/modules.py | 758 +++ twisted/python/monkey.py | 73 + twisted/python/procutils.py | 45 + twisted/python/randbytes.py | 131 + twisted/python/rebuild.py | 271 + twisted/python/reflect.py | 827 +++ twisted/python/release.py | 63 + twisted/python/roots.py | 248 + twisted/python/runtime.py | 137 + twisted/python/sendmsg.c | 502 ++ twisted/python/shortcut.py | 76 + twisted/python/syslog.py | 107 + twisted/python/systemd.py | 87 + twisted/python/test/__init__.py | 3 + twisted/python/test/deprecatedattributes.py | 21 + twisted/python/test/modules_helpers.py | 64 + twisted/python/test/pullpipe.py | 40 + twisted/python/test/test_components.py | 770 +++ twisted/python/test/test_constants.py | 778 +++ twisted/python/test/test_deprecate.py | 767 +++ twisted/python/test/test_dist.py | 316 + twisted/python/test/test_fakepwd.py | 386 ++ twisted/python/test/test_hashlib.py | 90 + twisted/python/test/test_htmlizer.py | 41 + twisted/python/test/test_inotify.py | 120 + twisted/python/test/test_release.py | 2564 ++++++++ twisted/python/test/test_runtime.py | 91 + twisted/python/test/test_sendmsg.py | 543 ++ twisted/python/test/test_shellcomp.py | 623 ++ twisted/python/test/test_syslog.py | 151 + twisted/python/test/test_systemd.py | 173 + twisted/python/test/test_util.py | 892 +++ twisted/python/test/test_versions.py | 323 + twisted/python/test/test_win32.py | 35 + twisted/python/test/test_zipstream.py | 504 ++ twisted/python/test/test_zshcomp.py | 228 + twisted/python/text.py | 198 + twisted/python/threadable.py | 118 + twisted/python/threadpool.py | 240 + twisted/python/twisted-completion.zsh | 33 + twisted/python/urlpath.py | 122 + twisted/python/usage.py | 973 +++ twisted/python/util.py | 983 +++ twisted/python/versions.py | 249 + twisted/python/win32.py | 168 + twisted/python/zippath.py | 268 + twisted/python/zipstream.py | 387 ++ twisted/python/zsh/README.txt | 9 + twisted/python/zsh/_cftp | 34 + twisted/python/zsh/_ckeygen | 34 + twisted/python/zsh/_conch | 34 + twisted/python/zsh/_lore | 34 + twisted/python/zsh/_manhole | 34 + twisted/python/zsh/_mktap | 34 + twisted/python/zsh/_pyhtmlizer | 34 + twisted/python/zsh/_tap2deb | 34 + twisted/python/zsh/_tap2rpm | 34 + twisted/python/zsh/_tapconvert | 34 + twisted/python/zsh/_tkconch | 34 + twisted/python/zsh/_tkmktap | 34 + twisted/python/zsh/_trial | 34 + twisted/python/zsh/_twistd | 34 + twisted/python/zsh/_websetroot | 34 + twisted/python/zshcomp.py | 824 +++ twisted/runner/__init__.py | 15 + twisted/runner/_version.py | 3 + twisted/runner/inetd.py | 70 + twisted/runner/inetdconf.py | 194 + twisted/runner/inetdtap.py | 163 + twisted/runner/portmap.c | 57 + twisted/runner/procmon.py | 310 + twisted/runner/procmontap.py | 73 + twisted/runner/test/__init__.py | 6 + twisted/runner/test/test_procmon.py | 477 ++ twisted/runner/test/test_procmontap.py | 87 + twisted/runner/topfiles/NEWS | 101 + twisted/runner/topfiles/README | 3 + twisted/runner/topfiles/setup.py | 35 + twisted/scripts/__init__.py | 27 + twisted/scripts/_twistd_unix.py | 349 ++ twisted/scripts/_twistw.py | 50 + twisted/scripts/htmlizer.py | 69 + twisted/scripts/manhole.py | 69 + twisted/scripts/tap2deb.py | 281 + twisted/scripts/tap2rpm.py | 331 + twisted/scripts/tapconvert.py | 57 + twisted/scripts/test/__init__.py | 6 + twisted/scripts/test/test_scripts.py | 178 + twisted/scripts/test/test_tap2rpm.py | 399 ++ twisted/scripts/tkunzip.py | 292 + twisted/scripts/trial.py | 389 ++ twisted/scripts/twistd.py | 30 + twisted/spread/__init__.py | 12 + twisted/spread/banana.py | 358 ++ twisted/spread/flavors.py | 590 ++ twisted/spread/interfaces.py | 28 + twisted/spread/jelly.py | 1151 ++++ twisted/spread/pb.py | 1434 +++++ twisted/spread/publish.py | 142 + twisted/spread/ui/__init__.py | 12 + twisted/spread/ui/gtk2util.py | 222 + twisted/spread/ui/login2.glade | 461 ++ twisted/spread/ui/tktree.py | 204 + twisted/spread/ui/tkutil.py | 397 ++ twisted/spread/util.py | 215 + twisted/tap/__init__.py | 10 + twisted/tap/ftp.py | 69 + twisted/tap/manhole.py | 54 + twisted/tap/portforward.py | 27 + twisted/tap/socks.py | 38 + twisted/tap/telnet.py | 32 + twisted/test/__init__.py | 10 + twisted/test/_preamble.py | 17 + twisted/test/crash_test_dummy.py | 34 + twisted/test/generator_failure_tests.py | 177 + twisted/test/iosim.py | 270 + twisted/test/mock_win32process.py | 48 + twisted/test/myrebuilder1.py | 15 + twisted/test/myrebuilder2.py | 16 + twisted/test/plugin_basic.py | 57 + twisted/test/plugin_extra1.py | 23 + twisted/test/plugin_extra2.py | 35 + twisted/test/process_cmdline.py | 5 + twisted/test/process_echoer.py | 11 + twisted/test/process_fds.py | 40 + twisted/test/process_linger.py | 17 + twisted/test/process_reader.py | 12 + twisted/test/process_signal.py | 8 + twisted/test/process_stdinreader.py | 23 + twisted/test/process_tester.py | 37 + twisted/test/process_tty.py | 6 + twisted/test/process_twisted.py | 43 + twisted/test/proto_helpers.py | 558 ++ twisted/test/raiser.c | 1443 +++++ twisted/test/raiser.pyx | 21 + twisted/test/reflect_helper_IE.py | 4 + twisted/test/reflect_helper_VE.py | 4 + twisted/test/reflect_helper_ZDE.py | 4 + twisted/test/server.pem | 36 + twisted/test/ssl_helpers.py | 26 + twisted/test/stdio_test_consumer.py | 39 + twisted/test/stdio_test_halfclose.py | 66 + twisted/test/stdio_test_hostpeer.py | 32 + twisted/test/stdio_test_lastwrite.py | 45 + twisted/test/stdio_test_loseconn.py | 48 + twisted/test/stdio_test_producer.py | 55 + twisted/test/stdio_test_write.py | 31 + twisted/test/stdio_test_writeseq.py | 30 + twisted/test/test_abstract.py | 83 + twisted/test/test_adbapi.py | 819 +++ twisted/test/test_amp.py | 3178 ++++++++++ twisted/test/test_application.py | 878 +++ twisted/test/test_banana.py | 278 + twisted/test/test_compat.py | 199 + twisted/test/test_context.py | 15 + twisted/test/test_cooperator.py | 669 ++ twisted/test/test_defer.py | 2002 ++++++ twisted/test/test_defgen.py | 309 + twisted/test/test_dict.py | 22 + twisted/test/test_digestauth.py | 671 ++ twisted/test/test_dirdbm.py | 170 + twisted/test/test_doc.py | 104 + twisted/test/test_epoll.py | 158 + twisted/test/test_error.py | 170 + twisted/test/test_explorer.py | 236 + twisted/test/test_factories.py | 197 + twisted/test/test_failure.py | 594 ++ twisted/test/test_fdesc.py | 235 + twisted/test/test_finger.py | 67 + twisted/test/test_formmethod.py | 77 + twisted/test/test_ftp.py | 3017 +++++++++ twisted/test/test_ftp_options.py | 80 + twisted/test/test_hook.py | 150 + twisted/test/test_htb.py | 109 + twisted/test/test_ident.py | 194 + twisted/test/test_import.py | 75 + twisted/test/test_internet.py | 1396 +++++ twisted/test/test_iutils.py | 296 + twisted/test/test_jelly.py | 671 ++ twisted/test/test_lockfile.py | 445 ++ twisted/test/test_log.py | 773 +++ twisted/test/test_logfile.py | 320 + twisted/test/test_loopback.py | 419 ++ twisted/test/test_manhole.py | 75 + twisted/test/test_memcache.py | 663 ++ twisted/test/test_modules.py | 478 ++ twisted/test/test_monkey.py | 161 + twisted/test/test_newcred.py | 445 ++ twisted/test/test_nmea.py | 115 + twisted/test/test_paths.py | 1622 +++++ twisted/test/test_pb.py | 1846 ++++++ twisted/test/test_pbfailure.py | 475 ++ twisted/test/test_pcp.py | 368 ++ twisted/test/test_persisted.py | 377 ++ twisted/test/test_plugin.py | 719 +++ twisted/test/test_policies.py | 736 +++ twisted/test/test_postfix.py | 108 + twisted/test/test_process.py | 2482 ++++++++ twisted/test/test_protocols.py | 1260 ++++ twisted/test/test_randbytes.py | 119 + twisted/test/test_rebuild.py | 252 + twisted/test/test_reflect.py | 867 +++ twisted/test/test_roots.py | 63 + twisted/test/test_shortcut.py | 26 + twisted/test/test_sip.py | 942 +++ twisted/test/test_sob.py | 172 + twisted/test/test_socks.py | 498 ++ twisted/test/test_ssl.py | 726 +++ twisted/test/test_sslverify.py | 558 ++ twisted/test/test_stateful.py | 81 + twisted/test/test_stdio.py | 371 ++ twisted/test/test_strcred.py | 657 ++ twisted/test/test_strerror.py | 151 + twisted/test/test_stringtransport.py | 279 + twisted/test/test_strports.py | 133 + twisted/test/test_task.py | 739 +++ twisted/test/test_tcp.py | 1820 ++++++ twisted/test/test_tcp_internals.py | 249 + twisted/test/test_text.py | 158 + twisted/test/test_threadable.py | 103 + twisted/test/test_threadpool.py | 526 ++ twisted/test/test_threads.py | 412 ++ twisted/test/test_timehelpers.py | 31 + twisted/test/test_tpfile.py | 52 + twisted/test/test_twistd.py | 1549 +++++ twisted/test/test_udp.py | 721 +++ twisted/test/test_unix.py | 405 ++ twisted/test/test_usage.py | 584 ++ twisted/test/testutils.py | 55 + twisted/test/time_helpers.py | 72 + twisted/topfiles/CREDITS | 60 + twisted/topfiles/ChangeLog.Old | 3888 ++++++++++++ twisted/topfiles/NEWS | 1744 ++++++ twisted/topfiles/README | 14 + twisted/topfiles/setup.py | 94 + twisted/trial/__init__.py | 52 + twisted/trial/itrial.py | 251 + twisted/trial/reporter.py | 1233 ++++ twisted/trial/runner.py | 877 +++ twisted/trial/test/__init__.py | 1 + twisted/trial/test/detests.py | 195 + twisted/trial/test/erroneous.py | 130 + twisted/trial/test/mockcustomsuite.py | 21 + twisted/trial/test/mockcustomsuite2.py | 21 + twisted/trial/test/mockcustomsuite3.py | 28 + twisted/trial/test/mockdoctest.py | 104 + twisted/trial/test/moduleself.py | 7 + twisted/trial/test/moduletest.py | 11 + twisted/trial/test/notpython | 2 + twisted/trial/test/novars.py | 6 + twisted/trial/test/packages.py | 156 + twisted/trial/test/sample.py | 108 + twisted/trial/test/scripttest.py | 14 + twisted/trial/test/suppression.py | 57 + twisted/trial/test/test_assertions.py | 817 +++ twisted/trial/test/test_deferred.py | 220 + twisted/trial/test/test_doctest.py | 64 + twisted/trial/test/test_keyboard.py | 113 + twisted/trial/test/test_loader.py | 611 ++ twisted/trial/test/test_log.py | 197 + twisted/trial/test/test_output.py | 162 + twisted/trial/test/test_plugins.py | 46 + twisted/trial/test/test_pyunitcompat.py | 222 + twisted/trial/test/test_reporter.py | 1649 +++++ twisted/trial/test/test_runner.py | 1034 ++++ twisted/trial/test/test_script.py | 482 ++ twisted/trial/test/test_test_visitor.py | 82 + twisted/trial/test/test_testcase.py | 51 + twisted/trial/test/test_tests.py | 1056 ++++ twisted/trial/test/test_util.py | 559 ++ twisted/trial/test/test_warning.py | 472 ++ twisted/trial/test/weird.py | 20 + twisted/trial/unittest.py | 1620 +++++ twisted/trial/util.py | 430 ++ twisted/web/__init__.py | 21 + twisted/web/_auth/__init__.py | 7 + twisted/web/_auth/basic.py | 59 + twisted/web/_auth/digest.py | 54 + twisted/web/_auth/wrapper.py | 225 + twisted/web/_element.py | 185 + twisted/web/_flatten.py | 314 + twisted/web/_newclient.py | 1502 +++++ twisted/web/_stan.py | 325 + twisted/web/_version.py | 3 + twisted/web/client.py | 1600 +++++ twisted/web/demo.py | 24 + twisted/web/distrib.py | 373 ++ twisted/web/domhelpers.py | 268 + twisted/web/error.py | 422 ++ twisted/web/failure.xhtml | 71 + twisted/web/google.py | 75 + twisted/web/guard.py | 17 + twisted/web/html.py | 49 + twisted/web/http.py | 1812 ++++++ twisted/web/http_headers.py | 277 + twisted/web/iweb.py | 526 ++ twisted/web/microdom.py | 1028 ++++ twisted/web/proxy.py | 303 + twisted/web/resource.py | 319 + twisted/web/rewrite.py | 52 + twisted/web/script.py | 169 + twisted/web/server.py | 592 ++ twisted/web/soap.py | 154 + twisted/web/static.py | 1083 ++++ twisted/web/sux.py | 637 ++ twisted/web/tap.py | 232 + twisted/web/template.py | 566 ++ twisted/web/test/__init__.py | 7 + twisted/web/test/_util.py | 77 + twisted/web/test/test_cgi.py | 270 + twisted/web/test/test_distrib.py | 434 ++ twisted/web/test/test_domhelpers.py | 306 + twisted/web/test/test_error.py | 151 + twisted/web/test/test_flatten.py | 348 ++ twisted/web/test/test_http.py | 1663 +++++ twisted/web/test/test_http_headers.py | 616 ++ twisted/web/test/test_httpauth.py | 634 ++ twisted/web/test/test_newclient.py | 2521 ++++++++ twisted/web/test/test_proxy.py | 544 ++ twisted/web/test/test_resource.py | 145 + twisted/web/test/test_script.py | 70 + twisted/web/test/test_soap.py | 114 + twisted/web/test/test_stan.py | 139 + twisted/web/test/test_static.py | 1505 +++++ twisted/web/test/test_tap.py | 196 + twisted/web/test/test_template.py | 810 +++ twisted/web/test/test_util.py | 380 ++ twisted/web/test/test_vhost.py | 105 + twisted/web/test/test_web.py | 1100 ++++ twisted/web/test/test_webclient.py | 3144 ++++++++++ twisted/web/test/test_wsgi.py | 1572 +++++ twisted/web/test/test_xml.py | 1105 ++++ twisted/web/test/test_xmlrpc.py | 849 +++ twisted/web/topfiles/NEWS | 556 ++ twisted/web/topfiles/README | 6 + twisted/web/topfiles/setup.py | 30 + twisted/web/twcgi.py | 299 + twisted/web/util.py | 433 ++ twisted/web/vhost.py | 135 + twisted/web/wsgi.py | 403 ++ twisted/web/xmlrpc.py | 590 ++ twisted/words/__init__.py | 10 + twisted/words/_version.py | 3 + twisted/words/ewords.py | 34 + twisted/words/im/__init__.py | 6 + twisted/words/im/baseaccount.py | 62 + twisted/words/im/basechat.py | 512 ++ twisted/words/im/basesupport.py | 270 + twisted/words/im/instancemessenger.glade | 3165 ++++++++++ twisted/words/im/interfaces.py | 364 ++ twisted/words/im/ircsupport.py | 263 + twisted/words/im/locals.py | 26 + twisted/words/im/pbsupport.py | 260 + twisted/words/iwords.py | 266 + twisted/words/protocols/__init__.py | 1 + twisted/words/protocols/irc.py | 3302 ++++++++++ twisted/words/protocols/jabber/__init__.py | 8 + twisted/words/protocols/jabber/client.py | 368 ++ twisted/words/protocols/jabber/component.py | 474 ++ twisted/words/protocols/jabber/error.py | 336 ++ twisted/words/protocols/jabber/ijabber.py | 199 + twisted/words/protocols/jabber/jid.py | 249 + twisted/words/protocols/jabber/jstrports.py | 31 + twisted/words/protocols/jabber/sasl.py | 243 + twisted/words/protocols/jabber/sasl_mechanisms.py | 240 + twisted/words/protocols/jabber/xmlstream.py | 1136 ++++ twisted/words/protocols/jabber/xmpp_stringprep.py | 253 + twisted/words/protocols/msn.py | 2479 ++++++++ twisted/words/protocols/oscar.py | 1235 ++++ twisted/words/service.py | 1223 ++++ twisted/words/tap.py | 74 + twisted/words/test/__init__.py | 1 + twisted/words/test/test_basechat.py | 68 + twisted/words/test/test_basesupport.py | 97 + twisted/words/test/test_domish.py | 434 ++ twisted/words/test/test_irc.py | 1898 ++++++ twisted/words/test/test_irc_service.py | 216 + twisted/words/test/test_ircsupport.py | 79 + twisted/words/test/test_jabberclient.py | 414 ++ twisted/words/test/test_jabbercomponent.py | 422 ++ twisted/words/test/test_jabbererror.py | 342 ++ twisted/words/test/test_jabberjid.py | 225 + twisted/words/test/test_jabberjstrports.py | 34 + twisted/words/test/test_jabbersasl.py | 272 + twisted/words/test/test_jabbersaslmechanisms.py | 90 + twisted/words/test/test_jabberxmlstream.py | 1332 ++++ twisted/words/test/test_jabberxmppstringprep.py | 92 + twisted/words/test/test_msn.py | 522 ++ twisted/words/test/test_oscar.py | 24 + twisted/words/test/test_service.py | 992 +++ twisted/words/test/test_tap.py | 78 + twisted/words/test/test_xishutil.py | 345 ++ twisted/words/test/test_xmlstream.py | 224 + twisted/words/test/test_xmpproutertap.py | 84 + twisted/words/test/test_xpath.py | 260 + twisted/words/topfiles/NEWS | 359 ++ twisted/words/topfiles/README | 5 + twisted/words/topfiles/setup.py | 53 + twisted/words/xish/__init__.py | 10 + twisted/words/xish/domish.py | 848 +++ twisted/words/xish/utility.py | 372 ++ twisted/words/xish/xmlstream.py | 261 + twisted/words/xish/xpath.py | 333 + twisted/words/xish/xpathparser.g | 375 ++ twisted/words/xish/xpathparser.py | 508 ++ twisted/words/xmpproutertap.py | 30 + 1431 files changed, 397047 insertions(+) create mode 100644 INSTALL create mode 100644 LICENSE create mode 100644 NEWS create mode 100644 README create mode 100644 bin/_preamble.py create mode 100755 bin/conch/cftp create mode 100755 bin/conch/ckeygen create mode 100755 bin/conch/conch create mode 100755 bin/conch/tkconch create mode 100755 bin/lore/lore create mode 100755 bin/mail/mailmail create mode 100755 bin/manhole create mode 100755 bin/pyhtmlizer create mode 100755 bin/tap2deb create mode 100755 bin/tap2rpm create mode 100755 bin/tapconvert create mode 100755 bin/trial create mode 100755 bin/twistd create mode 100644 doc/conch/benchmarks/README create mode 100755 doc/conch/benchmarks/buffering_mixin.py create mode 100644 doc/conch/examples/demo.tac create mode 100644 doc/conch/examples/demo_draw.tac create mode 100644 doc/conch/examples/demo_insults.tac create mode 100644 doc/conch/examples/demo_manhole.tac create mode 100644 doc/conch/examples/demo_recvline.tac create mode 100644 doc/conch/examples/demo_scroll.tac create mode 100644 doc/conch/examples/index.html create mode 100644 doc/conch/examples/sshsimpleclient.py create mode 100755 doc/conch/examples/sshsimpleserver.py create mode 100644 doc/conch/examples/telnet_echo.tac create mode 100644 doc/conch/examples/window.tac create mode 100644 doc/conch/howto/conch_client.html create mode 100644 doc/conch/howto/index.html create mode 100644 doc/conch/index.html create mode 100644 doc/conch/man/cftp-man.html create mode 100644 doc/conch/man/cftp.1 create mode 100644 doc/conch/man/ckeygen-man.html create mode 100644 doc/conch/man/ckeygen.1 create mode 100644 doc/conch/man/conch-man.html create mode 100644 doc/conch/man/conch.1 create mode 100644 doc/conch/man/tkconch-man.html create mode 100644 doc/conch/man/tkconch.1 create mode 100644 doc/core/benchmarks/banana.py create mode 100644 doc/core/benchmarks/deferreds.py create mode 100644 doc/core/benchmarks/failure.py create mode 100644 doc/core/benchmarks/linereceiver.py create mode 100644 doc/core/benchmarks/netstringreceiver.py create mode 100644 doc/core/benchmarks/task.py create mode 100644 doc/core/benchmarks/timer.py create mode 100644 doc/core/benchmarks/tpclient.py create mode 100644 doc/core/benchmarks/tpclient_nt.py create mode 100644 doc/core/benchmarks/tpserver.py create mode 100644 doc/core/benchmarks/tpserver_nt.py create mode 100644 doc/core/development/index.html create mode 100644 doc/core/development/listings/new_module_template.py create mode 100644 doc/core/development/naming.html create mode 100644 doc/core/development/philosophy.html create mode 100644 doc/core/development/policy/coding-standard.html create mode 100644 doc/core/development/policy/doc-standard.html create mode 100644 doc/core/development/policy/index.html create mode 100644 doc/core/development/policy/svn-dev.html create mode 100644 doc/core/development/policy/test-standard.html create mode 100644 doc/core/development/policy/writing-standard.html create mode 100644 doc/core/development/security.html create mode 100644 doc/core/examples/ampclient.py create mode 100644 doc/core/examples/ampserver.py create mode 100644 doc/core/examples/bananabench.py create mode 100644 doc/core/examples/chatserver.py create mode 100644 doc/core/examples/courier.py create mode 100644 doc/core/examples/cred.py create mode 100755 doc/core/examples/dbcred.py create mode 100644 doc/core/examples/echoclient.py create mode 100755 doc/core/examples/echoclient_ssl.py create mode 100644 doc/core/examples/echoclient_udp.py create mode 100644 doc/core/examples/echoserv.py create mode 100644 doc/core/examples/echoserv_ssl.py create mode 100644 doc/core/examples/echoserv_udp.py create mode 100644 doc/core/examples/filewatch.py create mode 100644 doc/core/examples/ftpclient.py create mode 100644 doc/core/examples/ftpserver.py create mode 100644 doc/core/examples/gpsfix.py create mode 100644 doc/core/examples/index.html create mode 100644 doc/core/examples/longex.py create mode 100644 doc/core/examples/longex2.py create mode 100755 doc/core/examples/mouse.py create mode 100644 doc/core/examples/pb_exceptions.py create mode 100644 doc/core/examples/pbbenchclient.py create mode 100644 doc/core/examples/pbbenchserver.py create mode 100644 doc/core/examples/pbecho.py create mode 100644 doc/core/examples/pbechoclient.py create mode 100644 doc/core/examples/pbgtk2.py create mode 100644 doc/core/examples/pbgtk2login.glade create mode 100644 doc/core/examples/pbinterop.py create mode 100644 doc/core/examples/pbsimple.py create mode 100644 doc/core/examples/pbsimpleclient.py create mode 100644 doc/core/examples/postfix.py create mode 100644 doc/core/examples/ptyserv.py create mode 100644 doc/core/examples/pyui_bg.png create mode 100755 doc/core/examples/pyuidemo.py create mode 100644 doc/core/examples/recvfd.py create mode 100644 doc/core/examples/rotatinglog.py create mode 100644 doc/core/examples/sendfd.py create mode 100644 doc/core/examples/server.pem create mode 100644 doc/core/examples/shaper.py create mode 100644 doc/core/examples/shoutcast.py create mode 100644 doc/core/examples/simple.tac create mode 100644 doc/core/examples/simpleclient.py create mode 100644 doc/core/examples/simpleserv.py create mode 100644 doc/core/examples/stdin.py create mode 100644 doc/core/examples/stdiodemo.py create mode 100644 doc/core/examples/streaming.py create mode 100644 doc/core/examples/testlogging.py create mode 100644 doc/core/examples/threadedselect/Cocoa/SimpleWebClient/English.lproj/MainMenu.nib/classes.nib create mode 100644 doc/core/examples/threadedselect/Cocoa/SimpleWebClient/English.lproj/MainMenu.nib/info.nib create mode 100644 doc/core/examples/threadedselect/Cocoa/SimpleWebClient/English.lproj/MainMenu.nib/keyedobjects.nib create mode 100644 doc/core/examples/threadedselect/Cocoa/SimpleWebClient/README.txt create mode 100644 doc/core/examples/threadedselect/Cocoa/SimpleWebClient/Twistzilla.py create mode 100644 doc/core/examples/threadedselect/Cocoa/SimpleWebClient/setup.py create mode 100644 doc/core/examples/threadedselect/README create mode 100644 doc/core/examples/threadedselect/blockingdemo.py create mode 100644 doc/core/examples/threadedselect/pygamedemo.py create mode 100644 doc/core/examples/tkinterdemo.py create mode 100644 doc/core/examples/twistd-logging.tac create mode 100644 doc/core/examples/wxacceptance.py create mode 100644 doc/core/examples/wxdemo.py create mode 100644 doc/core/howto/amp.html create mode 100644 doc/core/howto/application.html create mode 100644 doc/core/howto/basics.html create mode 100644 doc/core/howto/book.tex create mode 100644 doc/core/howto/choosing-reactor.html create mode 100644 doc/core/howto/clients.html create mode 100644 doc/core/howto/components.html create mode 100644 doc/core/howto/constants.html create mode 100644 doc/core/howto/cred.html create mode 100644 doc/core/howto/debug-with-emacs.html create mode 100644 doc/core/howto/defer.html create mode 100644 doc/core/howto/design.html create mode 100644 doc/core/howto/dirdbm.html create mode 100644 doc/core/howto/endpoints.html create mode 100644 doc/core/howto/gendefer.html create mode 100644 doc/core/howto/glossary.html create mode 100644 doc/core/howto/howto.tidyrc create mode 100644 doc/core/howto/index.html create mode 100644 doc/core/howto/internet-overview.html create mode 100644 doc/core/howto/listings/TwistedQuotes/__init__.py create mode 100644 doc/core/howto/listings/TwistedQuotes/pbquote.py create mode 100644 doc/core/howto/listings/TwistedQuotes/pbquoteclient.py create mode 100644 doc/core/howto/listings/TwistedQuotes/quoteproto.py create mode 100644 doc/core/howto/listings/TwistedQuotes/quoters.py create mode 100644 doc/core/howto/listings/TwistedQuotes/quotes.txt create mode 100644 doc/core/howto/listings/TwistedQuotes/quotetap.py create mode 100644 doc/core/howto/listings/TwistedQuotes/quotetap2.py create mode 100644 doc/core/howto/listings/TwistedQuotes/webquote.rpy create mode 100644 doc/core/howto/listings/amp/basic_client.py create mode 100644 doc/core/howto/listings/amp/basic_server.tac create mode 100644 doc/core/howto/listings/amp/command_client.py create mode 100644 doc/core/howto/listings/application/service.tac create mode 100644 doc/core/howto/listings/deferred/synch-validation.py create mode 100755 doc/core/howto/listings/pb/cache_classes.py create mode 100755 doc/core/howto/listings/pb/cache_receiver.py create mode 100755 doc/core/howto/listings/pb/cache_sender.py create mode 100755 doc/core/howto/listings/pb/chatclient.py create mode 100755 doc/core/howto/listings/pb/chatserver.py create mode 100755 doc/core/howto/listings/pb/copy2_classes.py create mode 100755 doc/core/howto/listings/pb/copy2_receiver.py create mode 100755 doc/core/howto/listings/pb/copy2_sender.py create mode 100755 doc/core/howto/listings/pb/copy_receiver.tac create mode 100755 doc/core/howto/listings/pb/copy_sender.py create mode 100755 doc/core/howto/listings/pb/exc_client.py create mode 100755 doc/core/howto/listings/pb/exc_server.py create mode 100755 doc/core/howto/listings/pb/pb1client.py create mode 100755 doc/core/howto/listings/pb/pb1server.py create mode 100755 doc/core/howto/listings/pb/pb2client.py create mode 100755 doc/core/howto/listings/pb/pb2server.py create mode 100755 doc/core/howto/listings/pb/pb3client.py create mode 100755 doc/core/howto/listings/pb/pb3server.py create mode 100755 doc/core/howto/listings/pb/pb4client.py create mode 100755 doc/core/howto/listings/pb/pb5client.py create mode 100755 doc/core/howto/listings/pb/pb5server.py create mode 100755 doc/core/howto/listings/pb/pb6client1.py create mode 100755 doc/core/howto/listings/pb/pb6client2.py create mode 100755 doc/core/howto/listings/pb/pb6server.py create mode 100755 doc/core/howto/listings/pb/pb7client.py create mode 100755 doc/core/howto/listings/pb/pbAnonClient.py create mode 100755 doc/core/howto/listings/pb/pbAnonServer.py create mode 100755 doc/core/howto/listings/pb/trap_client.py create mode 100755 doc/core/howto/listings/pb/trap_server.py create mode 100755 doc/core/howto/listings/process/process.py create mode 100644 doc/core/howto/listings/process/quotes.py create mode 100644 doc/core/howto/listings/process/trueandfalse.py create mode 100644 doc/core/howto/listings/sendmsg/copy_descriptor.py create mode 100644 doc/core/howto/listings/sendmsg/send_replacement.py create mode 100644 doc/core/howto/listings/servers/chat.py create mode 100644 doc/core/howto/listings/trial/calculus/__init__.py create mode 100644 doc/core/howto/listings/trial/calculus/base_1.py create mode 100644 doc/core/howto/listings/trial/calculus/base_2.py create mode 100644 doc/core/howto/listings/trial/calculus/base_3.py create mode 100644 doc/core/howto/listings/trial/calculus/client_1.py create mode 100644 doc/core/howto/listings/trial/calculus/client_2.py create mode 100644 doc/core/howto/listings/trial/calculus/client_3.py create mode 100644 doc/core/howto/listings/trial/calculus/remote_1.py create mode 100644 doc/core/howto/listings/trial/calculus/remote_2.py create mode 100644 doc/core/howto/listings/trial/calculus/test/__init__.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_base_1.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_base_2.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_base_2b.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_base_3.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_client_1.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_client_2.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_client_3.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_remote_1.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_remote_2.py create mode 100644 doc/core/howto/listings/trial/calculus/test/test_remote_3.py create mode 100644 doc/core/howto/listings/udp/MulticastClient.py create mode 100644 doc/core/howto/listings/udp/MulticastServer.py create mode 100644 doc/core/howto/logging.html create mode 100644 doc/core/howto/options.html create mode 100644 doc/core/howto/pb-clients.html create mode 100644 doc/core/howto/pb-copyable.html create mode 100644 doc/core/howto/pb-cred.html create mode 100644 doc/core/howto/pb-intro.html create mode 100644 doc/core/howto/pb-limits.html create mode 100644 doc/core/howto/pb-usage.html create mode 100644 doc/core/howto/pb.html create mode 100644 doc/core/howto/plugin.html create mode 100644 doc/core/howto/process.html create mode 100644 doc/core/howto/producers.html create mode 100644 doc/core/howto/quotes.html create mode 100644 doc/core/howto/rdbms.html create mode 100644 doc/core/howto/reactor-basics.html create mode 100644 doc/core/howto/sendmsg.html create mode 100644 doc/core/howto/servers.html create mode 100644 doc/core/howto/ssl.html create mode 100644 doc/core/howto/stylesheet-unprocessed.css create mode 100644 doc/core/howto/stylesheet.css create mode 100644 doc/core/howto/tap.html create mode 100644 doc/core/howto/template.tpl create mode 100644 doc/core/howto/testing.html create mode 100644 doc/core/howto/threading.html create mode 100644 doc/core/howto/time.html create mode 100644 doc/core/howto/trial.html create mode 100644 doc/core/howto/tutorial/backends.html create mode 100644 doc/core/howto/tutorial/client.html create mode 100644 doc/core/howto/tutorial/components.html create mode 100644 doc/core/howto/tutorial/configuration.html create mode 100644 doc/core/howto/tutorial/factory.html create mode 100644 doc/core/howto/tutorial/index.html create mode 100644 doc/core/howto/tutorial/intro.html create mode 100644 doc/core/howto/tutorial/library.html create mode 100644 doc/core/howto/tutorial/listings/finger/etc.users create mode 100755 doc/core/howto/tutorial/listings/finger/finger/__init__.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger/finger.py create mode 100644 doc/core/howto/tutorial/listings/finger/finger/tap.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger01.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger02.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger03.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger04.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger05.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger06.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger07.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger08.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger09.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger10.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger11.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger12.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger13.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger14.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger15.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger16.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger17.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger18.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger19.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger19a.tac create mode 100644 doc/core/howto/tutorial/listings/finger/finger19a_changes.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger19b.tac create mode 100644 doc/core/howto/tutorial/listings/finger/finger19b_changes.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger19c.tac create mode 100644 doc/core/howto/tutorial/listings/finger/finger19c_changes.py create mode 100755 doc/core/howto/tutorial/listings/finger/finger20.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger21.tac create mode 100755 doc/core/howto/tutorial/listings/finger/finger22.py create mode 100755 doc/core/howto/tutorial/listings/finger/fingerPBclient.py create mode 100755 doc/core/howto/tutorial/listings/finger/fingerXRclient.py create mode 100644 doc/core/howto/tutorial/listings/finger/finger_config.py create mode 100644 doc/core/howto/tutorial/listings/finger/fingerproxy.tac create mode 100644 doc/core/howto/tutorial/listings/finger/organized-finger.tac create mode 100644 doc/core/howto/tutorial/listings/finger/simple-finger.tac create mode 100644 doc/core/howto/tutorial/listings/finger/twisted/plugins/finger_tutorial.py create mode 100644 doc/core/howto/tutorial/pb.html create mode 100644 doc/core/howto/tutorial/protocol.html create mode 100644 doc/core/howto/tutorial/style.html create mode 100644 doc/core/howto/tutorial/web.html create mode 100644 doc/core/howto/udp.html create mode 100644 doc/core/howto/vision.html create mode 100644 doc/core/img/TwistedLogo.bmp create mode 100644 doc/core/img/cred-login.dia create mode 100644 doc/core/img/cred-login.png create mode 100644 doc/core/img/deferred-attach.dia create mode 100644 doc/core/img/deferred-attach.png create mode 100644 doc/core/img/deferred-process.dia create mode 100644 doc/core/img/deferred-process.png create mode 100644 doc/core/img/deferred-states.svg create mode 100644 doc/core/img/deferred.dia create mode 100644 doc/core/img/deferred.png create mode 100644 doc/core/index.html create mode 100644 doc/core/man/manhole-man.html create mode 100644 doc/core/man/manhole.1 create mode 100644 doc/core/man/pyhtmlizer-man.html create mode 100644 doc/core/man/pyhtmlizer.1 create mode 100644 doc/core/man/tap2deb-man.html create mode 100644 doc/core/man/tap2deb.1 create mode 100644 doc/core/man/tap2rpm-man.html create mode 100644 doc/core/man/tap2rpm.1 create mode 100644 doc/core/man/tapconvert-man.html create mode 100644 doc/core/man/tapconvert.1 create mode 100644 doc/core/man/trial-man.html create mode 100644 doc/core/man/trial.1 create mode 100644 doc/core/man/twistd-man.html create mode 100644 doc/core/man/twistd.1 create mode 100644 doc/core/specifications/banana.html create mode 100644 doc/core/specifications/index.html create mode 100644 doc/fun/Twisted.Quotes create mode 100644 doc/fun/lightbulb create mode 100644 doc/fun/register.html create mode 100644 doc/historic/2002/ipc10/twisted-network-framework/errata.html create mode 100644 doc/historic/2002/ipc10/twisted-network-framework/index.html create mode 100644 doc/historic/2003/europython/doanddont.html create mode 100644 doc/historic/2003/europython/index.html create mode 100644 doc/historic/2003/europython/lore.html create mode 100644 doc/historic/2003/europython/slides-template.tpl create mode 100644 doc/historic/2003/europython/tw-deploy.html create mode 100644 doc/historic/2003/europython/twisted.html create mode 100644 doc/historic/2003/europython/webclients.html create mode 100644 doc/historic/2003/haifux/haifux.html create mode 100644 doc/historic/2003/haifux/notes.html create mode 100755 doc/historic/2003/pycon/applications/applications create mode 100644 doc/historic/2003/pycon/applications/applications.html create mode 100644 doc/historic/2003/pycon/applications/pynfo-chart.png create mode 100755 doc/historic/2003/pycon/conch/conch create mode 100644 doc/historic/2003/pycon/conch/conch.html create mode 100755 doc/historic/2003/pycon/conch/conchtalk.txt create mode 100644 doc/historic/2003/pycon/conch/smalltwisted.png create mode 100644 doc/historic/2003/pycon/conch/twistedlogo.png create mode 100644 doc/historic/2003/pycon/deferex/deferex-bad-adding.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-chaining.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-complex-failure.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-complex-raise.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-forwarding.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-listing0.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-listing1.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-listing2.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-simple-failure.py create mode 100644 doc/historic/2003/pycon/deferex/deferex-simple-raise.py create mode 100644 doc/historic/2003/pycon/deferex/deferex.html create mode 100644 doc/historic/2003/pycon/deferex/deferexex.py create mode 100644 doc/historic/2003/pycon/intrinsics-lightning/intrinsics-lightning create mode 100755 doc/historic/2003/pycon/lore/lore-presentation create mode 100755 doc/historic/2003/pycon/lore/lore-slides.html create mode 100644 doc/historic/2003/pycon/lore/lore.html create mode 100755 doc/historic/2003/pycon/pb/pb-client1.py create mode 100755 doc/historic/2003/pycon/pb/pb-server1.py create mode 100755 doc/historic/2003/pycon/pb/pb-slides.py create mode 100644 doc/historic/2003/pycon/pb/pb.html create mode 100755 doc/historic/2003/pycon/releasing/releasing-twisted create mode 100644 doc/historic/2003/pycon/releasing/releasing.html create mode 100755 doc/historic/2003/pycon/tw-deploy/tw-deploy create mode 100644 doc/historic/2003/pycon/tw-deploy/twisted-overview.png create mode 100644 doc/historic/2003/pycon/tw-deploy/twistedlogo.png create mode 100644 doc/historic/2003/pycon/twisted-internet/twisted-internet.py create mode 100644 doc/historic/2003/pycon/twisted-reality/componentized.svg create mode 100644 doc/historic/2003/pycon/twisted-reality/twisted-reality.html create mode 100644 doc/historic/2004/ibm/talk.html create mode 100644 doc/historic/FirstTenYears.Quotes create mode 100644 doc/historic/Twisted-12.1.0.Quotes create mode 100644 doc/historic/index.html create mode 100644 doc/historic/ipc10errata.html create mode 100644 doc/historic/ipc10paper.html create mode 100644 doc/historic/stylesheet.css create mode 100644 doc/historic/template-notoc.tpl create mode 100644 doc/historic/template.tpl create mode 100644 doc/historic/twisted-debian.html create mode 100644 doc/index.xhtml create mode 100644 doc/lore/examples/example.html create mode 100644 doc/lore/examples/index.html create mode 100644 doc/lore/examples/slides-template.tpl create mode 100644 doc/lore/howto/extend-lore.html create mode 100644 doc/lore/howto/index.html create mode 100644 doc/lore/howto/listings/lore/1st_example.html create mode 100644 doc/lore/howto/listings/lore/a_lore_plugin.py create mode 100644 doc/lore/howto/listings/lore/factory.py-1 create mode 100644 doc/lore/howto/listings/lore/factory.py-2 create mode 100644 doc/lore/howto/listings/lore/factory.py-3 create mode 100644 doc/lore/howto/listings/lore/spitters.py-1 create mode 100644 doc/lore/howto/listings/lore/spitters.py-2 create mode 100644 doc/lore/howto/lore.html create mode 100644 doc/lore/img/myhtml-output.png create mode 100644 doc/lore/index.html create mode 100644 doc/lore/man/lore-man.html create mode 100644 doc/lore/man/lore.1 create mode 100644 doc/mail/examples/emailserver.tac create mode 100644 doc/mail/examples/imap4client.py create mode 100644 doc/mail/examples/index.html create mode 100644 doc/mail/examples/smtpclient_simple.py create mode 100644 doc/mail/examples/smtpclient_tls.py create mode 100644 doc/mail/index.html create mode 100644 doc/mail/man/mailmail-man.html create mode 100644 doc/mail/man/mailmail.1 create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-1.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-10.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-11.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-2.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-3.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-4.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-5.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-6.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-7.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-8.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient-9.tac create mode 100644 doc/mail/tutorial/smtpclient/smtpclient.html create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-1.tac create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-2.tac create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-3.tac create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-4.tac create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-5.tac create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-6.tac create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-7.tac create mode 100644 doc/mail/tutorial/smtpserver/smtpserver-8.tac create mode 100755 doc/names/examples/dns-service.py create mode 100755 doc/names/examples/gethostbyname.py create mode 100644 doc/names/examples/index.html create mode 100644 doc/names/examples/testdns.py create mode 100644 doc/names/howto/index.html create mode 100644 doc/names/howto/listings/names/example-domain.com create mode 100644 doc/names/howto/names.html create mode 100644 doc/names/index.html create mode 100644 doc/pair/examples/index.html create mode 100644 doc/pair/examples/pairudp.py create mode 100644 doc/pair/howto/index.html create mode 100644 doc/pair/howto/twisted-pair.html create mode 100644 doc/pair/index.html create mode 100644 doc/stylesheet.css create mode 100644 doc/web/examples/advogato.py create mode 100644 doc/web/examples/dlpage.py create mode 100644 doc/web/examples/fortune.rpy.py create mode 100644 doc/web/examples/getpage.py create mode 100644 doc/web/examples/google.py create mode 100644 doc/web/examples/hello.rpy.py create mode 100644 doc/web/examples/httpclient.py create mode 100644 doc/web/examples/index.html create mode 100644 doc/web/examples/lj.rpy.py create mode 100644 doc/web/examples/logging-proxy.py create mode 100644 doc/web/examples/proxy.py create mode 100644 doc/web/examples/report.rpy.py create mode 100644 doc/web/examples/reverse-proxy.py create mode 100644 doc/web/examples/rootscript.py create mode 100644 doc/web/examples/silly-web.py create mode 100644 doc/web/examples/simple.rtl create mode 100644 doc/web/examples/soap.py create mode 100644 doc/web/examples/users.rpy.py create mode 100644 doc/web/examples/web.py create mode 100644 doc/web/examples/webguard.py create mode 100644 doc/web/examples/xmlrpc.py create mode 100644 doc/web/examples/xmlrpcclient.py create mode 100644 doc/web/howto/client.html create mode 100644 doc/web/howto/glossary.html create mode 100644 doc/web/howto/index.html create mode 100644 doc/web/howto/listings/client/cookies.py create mode 100644 doc/web/howto/listings/client/filesendbody.py create mode 100644 doc/web/howto/listings/client/gzipdecoder.py create mode 100644 doc/web/howto/listings/client/request.py create mode 100644 doc/web/howto/listings/client/response.py create mode 100644 doc/web/howto/listings/client/sendbody.py create mode 100644 doc/web/howto/listings/client/stringprod.py create mode 100644 doc/web/howto/listings/element_1.py create mode 100644 doc/web/howto/listings/element_2.py create mode 100644 doc/web/howto/listings/element_3.py create mode 100644 doc/web/howto/listings/iteration-1.py create mode 100644 doc/web/howto/listings/iteration-1.xml create mode 100644 doc/web/howto/listings/iteration-output-1.xml create mode 100644 doc/web/howto/listings/output-1.html create mode 100644 doc/web/howto/listings/output-2.html create mode 100644 doc/web/howto/listings/output-3.html create mode 100644 doc/web/howto/listings/quoting-output.html create mode 100644 doc/web/howto/listings/quoting_element.py create mode 100644 doc/web/howto/listings/render_1.py create mode 100644 doc/web/howto/listings/render_2.py create mode 100644 doc/web/howto/listings/render_3.py create mode 100644 doc/web/howto/listings/render_quoting.py create mode 100644 doc/web/howto/listings/render_slots_attrs.py create mode 100644 doc/web/howto/listings/render_transparent.py create mode 100644 doc/web/howto/listings/slots-attributes-1.xml create mode 100644 doc/web/howto/listings/slots-attributes-output.html create mode 100644 doc/web/howto/listings/slots_attributes_1.py create mode 100644 doc/web/howto/listings/soap.rpy create mode 100644 doc/web/howto/listings/subviews-1.py create mode 100644 doc/web/howto/listings/subviews-1.xml create mode 100644 doc/web/howto/listings/subviews-output-1.xml create mode 100644 doc/web/howto/listings/template-1.xml create mode 100644 doc/web/howto/listings/transparent-1.xml create mode 100644 doc/web/howto/listings/transparent-output.html create mode 100644 doc/web/howto/listings/transparent_element.py create mode 100644 doc/web/howto/listings/wait_for_it.py create mode 100644 doc/web/howto/listings/waited-for-it.html create mode 100644 doc/web/howto/listings/waited-for-it.txt create mode 100644 doc/web/howto/listings/webquote.rtl create mode 100644 doc/web/howto/listings/xmlAndSoapQuote.py create mode 100644 doc/web/howto/listings/xmlquote.rpy create mode 100644 doc/web/howto/listings/xmlrpc-customized.py create mode 100644 doc/web/howto/resource-templates.html create mode 100644 doc/web/howto/twisted-templates.html create mode 100644 doc/web/howto/using-twistedweb.html create mode 100644 doc/web/howto/web-development.html create mode 100644 doc/web/howto/web-in-60/asynchronous-deferred.html create mode 100644 doc/web/howto/web-in-60/asynchronous.html create mode 100644 doc/web/howto/web-in-60/custom-codes.html create mode 100644 doc/web/howto/web-in-60/dynamic-content.html create mode 100644 doc/web/howto/web-in-60/dynamic-dispatch.html create mode 100644 doc/web/howto/web-in-60/error-handling.html create mode 100644 doc/web/howto/web-in-60/handling-posts.html create mode 100644 doc/web/howto/web-in-60/http-auth.html create mode 100644 doc/web/howto/web-in-60/index.html create mode 100644 doc/web/howto/web-in-60/interrupted.html create mode 100644 doc/web/howto/web-in-60/logging-errors.html create mode 100644 doc/web/howto/web-in-60/rpy-scripts.html create mode 100644 doc/web/howto/web-in-60/session-basics.html create mode 100644 doc/web/howto/web-in-60/session-endings.html create mode 100644 doc/web/howto/web-in-60/session-store.html create mode 100644 doc/web/howto/web-in-60/static-content.html create mode 100644 doc/web/howto/web-in-60/static-dispatch.html create mode 100644 doc/web/howto/web-in-60/wsgi.html create mode 100644 doc/web/howto/web-overview.html create mode 100644 doc/web/howto/xmlrpc.html create mode 100644 doc/web/img/controller.png create mode 100644 doc/web/img/livepage.png create mode 100644 doc/web/img/model.png create mode 100644 doc/web/img/plone_root_model.png create mode 100644 doc/web/img/view.png create mode 100644 doc/web/img/web-overview.dia create mode 100644 doc/web/img/web-overview.png create mode 100644 doc/web/img/web-process.png create mode 100644 doc/web/img/web-process.svg create mode 100644 doc/web/img/web-session.png create mode 100644 doc/web/img/web-widgets.dia create mode 100644 doc/web/img/web-widgets.png create mode 100644 doc/web/index.html create mode 100644 doc/words/examples/cursesclient.py create mode 100644 doc/words/examples/index.html create mode 100644 doc/words/examples/ircLogBot.py create mode 100644 doc/words/examples/jabber_client.py create mode 100644 doc/words/examples/minchat.py create mode 100644 doc/words/examples/msn_example.py create mode 100755 doc/words/examples/oscardemo.py create mode 100644 doc/words/examples/pb_client.py create mode 100644 doc/words/examples/xmpp_client.py create mode 100644 doc/words/howto/im.html create mode 100644 doc/words/howto/index.html create mode 100644 doc/words/index.html create mode 100644 packaging/python-twisted.changes create mode 100644 packaging/python-twisted.spec create mode 100755 setup.py create mode 100644 twisted/__init__.py create mode 100644 twisted/_version.py create mode 100644 twisted/application/__init__.py create mode 100644 twisted/application/app.py create mode 100644 twisted/application/internet.py create mode 100644 twisted/application/reactors.py create mode 100644 twisted/application/service.py create mode 100644 twisted/application/strports.py create mode 100644 twisted/application/test/__init__.py create mode 100644 twisted/application/test/test_internet.py create mode 100644 twisted/conch/__init__.py create mode 100644 twisted/conch/_version.py create mode 100644 twisted/conch/avatar.py create mode 100644 twisted/conch/checkers.py create mode 100644 twisted/conch/client/__init__.py create mode 100644 twisted/conch/client/agent.py create mode 100644 twisted/conch/client/connect.py create mode 100644 twisted/conch/client/default.py create mode 100644 twisted/conch/client/direct.py create mode 100644 twisted/conch/client/knownhosts.py create mode 100644 twisted/conch/client/options.py create mode 100644 twisted/conch/error.py create mode 100644 twisted/conch/insults/__init__.py create mode 100644 twisted/conch/insults/client.py create mode 100644 twisted/conch/insults/colors.py create mode 100644 twisted/conch/insults/helper.py create mode 100644 twisted/conch/insults/insults.py create mode 100644 twisted/conch/insults/text.py create mode 100644 twisted/conch/insults/window.py create mode 100644 twisted/conch/interfaces.py create mode 100644 twisted/conch/ls.py create mode 100644 twisted/conch/manhole.py create mode 100644 twisted/conch/manhole_ssh.py create mode 100644 twisted/conch/manhole_tap.py create mode 100644 twisted/conch/mixin.py create mode 100644 twisted/conch/openssh_compat/__init__.py create mode 100644 twisted/conch/openssh_compat/factory.py create mode 100644 twisted/conch/openssh_compat/primes.py create mode 100644 twisted/conch/recvline.py create mode 100644 twisted/conch/scripts/__init__.py create mode 100644 twisted/conch/scripts/cftp.py create mode 100644 twisted/conch/scripts/ckeygen.py create mode 100644 twisted/conch/scripts/conch.py create mode 100644 twisted/conch/scripts/tkconch.py create mode 100644 twisted/conch/ssh/__init__.py create mode 100644 twisted/conch/ssh/agent.py create mode 100644 twisted/conch/ssh/channel.py create mode 100644 twisted/conch/ssh/common.py create mode 100644 twisted/conch/ssh/connection.py create mode 100644 twisted/conch/ssh/factory.py create mode 100644 twisted/conch/ssh/filetransfer.py create mode 100755 twisted/conch/ssh/forwarding.py create mode 100644 twisted/conch/ssh/keys.py create mode 100644 twisted/conch/ssh/service.py create mode 100755 twisted/conch/ssh/session.py create mode 100644 twisted/conch/ssh/sexpy.py create mode 100644 twisted/conch/ssh/transport.py create mode 100644 twisted/conch/ssh/userauth.py create mode 100644 twisted/conch/stdio.py create mode 100644 twisted/conch/tap.py create mode 100644 twisted/conch/telnet.py create mode 100644 twisted/conch/test/__init__.py create mode 100644 twisted/conch/test/keydata.py create mode 100644 twisted/conch/test/test_agent.py create mode 100644 twisted/conch/test/test_cftp.py create mode 100644 twisted/conch/test/test_channel.py create mode 100644 twisted/conch/test/test_checkers.py create mode 100644 twisted/conch/test/test_ckeygen.py create mode 100644 twisted/conch/test/test_conch.py create mode 100644 twisted/conch/test/test_connection.py create mode 100644 twisted/conch/test/test_default.py create mode 100644 twisted/conch/test/test_filetransfer.py create mode 100644 twisted/conch/test/test_helper.py create mode 100644 twisted/conch/test/test_insults.py create mode 100644 twisted/conch/test/test_keys.py create mode 100644 twisted/conch/test/test_knownhosts.py create mode 100644 twisted/conch/test/test_manhole.py create mode 100644 twisted/conch/test/test_mixin.py create mode 100644 twisted/conch/test/test_openssh_compat.py create mode 100644 twisted/conch/test/test_recvline.py create mode 100644 twisted/conch/test/test_scripts.py create mode 100644 twisted/conch/test/test_session.py create mode 100644 twisted/conch/test/test_ssh.py create mode 100644 twisted/conch/test/test_tap.py create mode 100644 twisted/conch/test/test_telnet.py create mode 100644 twisted/conch/test/test_text.py create mode 100644 twisted/conch/test/test_transport.py create mode 100644 twisted/conch/test/test_userauth.py create mode 100644 twisted/conch/test/test_window.py create mode 100644 twisted/conch/topfiles/NEWS create mode 100644 twisted/conch/topfiles/README create mode 100644 twisted/conch/topfiles/setup.py create mode 100644 twisted/conch/ttymodes.py create mode 100755 twisted/conch/ui/__init__.py create mode 100644 twisted/conch/ui/ansi.py create mode 100644 twisted/conch/ui/tkvt100.py create mode 100644 twisted/conch/unix.py create mode 100644 twisted/copyright.py create mode 100644 twisted/cred/__init__.py create mode 100644 twisted/cred/_digest.py create mode 100644 twisted/cred/checkers.py create mode 100644 twisted/cred/credentials.py create mode 100644 twisted/cred/error.py create mode 100644 twisted/cred/pamauth.py create mode 100644 twisted/cred/portal.py create mode 100644 twisted/cred/strcred.py create mode 100644 twisted/enterprise/__init__.py create mode 100644 twisted/enterprise/adbapi.py create mode 100644 twisted/internet/__init__.py create mode 100644 twisted/internet/_baseprocess.py create mode 100644 twisted/internet/_dumbwin32proc.py create mode 100644 twisted/internet/_glibbase.py create mode 100644 twisted/internet/_newtls.py create mode 100644 twisted/internet/_oldtls.py create mode 100644 twisted/internet/_pollingfile.py create mode 100644 twisted/internet/_posixserialport.py create mode 100644 twisted/internet/_posixstdio.py create mode 100644 twisted/internet/_sigchld.c create mode 100644 twisted/internet/_signals.py create mode 100644 twisted/internet/_ssl.py create mode 100644 twisted/internet/_sslverify.py create mode 100644 twisted/internet/_threadedselect.py create mode 100644 twisted/internet/_win32serialport.py create mode 100644 twisted/internet/_win32stdio.py create mode 100644 twisted/internet/abstract.py create mode 100644 twisted/internet/address.py create mode 100644 twisted/internet/base.py create mode 100644 twisted/internet/cfreactor.py create mode 100644 twisted/internet/default.py create mode 100644 twisted/internet/defer.py create mode 100644 twisted/internet/endpoints.py create mode 100644 twisted/internet/epollreactor.py create mode 100644 twisted/internet/error.py create mode 100644 twisted/internet/fdesc.py create mode 100644 twisted/internet/gireactor.py create mode 100644 twisted/internet/glib2reactor.py create mode 100644 twisted/internet/gtk2reactor.py create mode 100644 twisted/internet/gtk3reactor.py create mode 100644 twisted/internet/gtkreactor.py create mode 100644 twisted/internet/inotify.py create mode 100644 twisted/internet/interfaces.py create mode 100644 twisted/internet/iocpreactor/__init__.py create mode 100644 twisted/internet/iocpreactor/abstract.py create mode 100644 twisted/internet/iocpreactor/build.bat create mode 100644 twisted/internet/iocpreactor/const.py create mode 100644 twisted/internet/iocpreactor/interfaces.py create mode 100644 twisted/internet/iocpreactor/iocpsupport/acceptex.pxi create mode 100644 twisted/internet/iocpreactor/iocpsupport/connectex.pxi create mode 100644 twisted/internet/iocpreactor/iocpsupport/iocpsupport.c create mode 100644 twisted/internet/iocpreactor/iocpsupport/iocpsupport.pyx create mode 100644 twisted/internet/iocpreactor/iocpsupport/winsock_pointers.c create mode 100644 twisted/internet/iocpreactor/iocpsupport/winsock_pointers.h create mode 100644 twisted/internet/iocpreactor/iocpsupport/wsarecv.pxi create mode 100644 twisted/internet/iocpreactor/iocpsupport/wsasend.pxi create mode 100644 twisted/internet/iocpreactor/notes.txt create mode 100644 twisted/internet/iocpreactor/reactor.py create mode 100644 twisted/internet/iocpreactor/setup.py create mode 100644 twisted/internet/iocpreactor/tcp.py create mode 100644 twisted/internet/iocpreactor/udp.py create mode 100644 twisted/internet/kqreactor.py create mode 100644 twisted/internet/main.py create mode 100644 twisted/internet/pollreactor.py create mode 100644 twisted/internet/posixbase.py create mode 100644 twisted/internet/process.py create mode 100644 twisted/internet/protocol.py create mode 100644 twisted/internet/pyuisupport.py create mode 100644 twisted/internet/qtreactor.py create mode 100644 twisted/internet/reactor.py create mode 100644 twisted/internet/selectreactor.py create mode 100644 twisted/internet/serialport.py create mode 100644 twisted/internet/ssl.py create mode 100644 twisted/internet/stdio.py create mode 100644 twisted/internet/task.py create mode 100644 twisted/internet/tcp.py create mode 100644 twisted/internet/test/__init__.py create mode 100644 twisted/internet/test/_posixifaces.py create mode 100644 twisted/internet/test/_win32ifaces.py create mode 100644 twisted/internet/test/connectionmixins.py create mode 100644 twisted/internet/test/fake_CAs/not-a-certificate create mode 100644 twisted/internet/test/fake_CAs/thing1.pem create mode 100644 twisted/internet/test/fake_CAs/thing2-duplicate.pem create mode 100644 twisted/internet/test/fake_CAs/thing2.pem create mode 100644 twisted/internet/test/fakeendpoint.py create mode 100644 twisted/internet/test/inlinecb_tests.py create mode 100644 twisted/internet/test/process_helper.py create mode 100644 twisted/internet/test/reactormixins.py create mode 100644 twisted/internet/test/test_abstract.py create mode 100644 twisted/internet/test/test_address.py create mode 100644 twisted/internet/test/test_base.py create mode 100644 twisted/internet/test/test_baseprocess.py create mode 100644 twisted/internet/test/test_core.py create mode 100644 twisted/internet/test/test_default.py create mode 100644 twisted/internet/test/test_endpoints.py create mode 100644 twisted/internet/test/test_epollreactor.py create mode 100644 twisted/internet/test/test_fdset.py create mode 100644 twisted/internet/test/test_filedescriptor.py create mode 100644 twisted/internet/test/test_glibbase.py create mode 100644 twisted/internet/test/test_gtk3reactor.py create mode 100644 twisted/internet/test/test_gtkreactor.py create mode 100644 twisted/internet/test/test_inlinecb.py create mode 100644 twisted/internet/test/test_inotify.py create mode 100644 twisted/internet/test/test_interfaces.py create mode 100644 twisted/internet/test/test_iocp.py create mode 100644 twisted/internet/test/test_main.py create mode 100644 twisted/internet/test/test_newtls.py create mode 100644 twisted/internet/test/test_pollingfile.py create mode 100644 twisted/internet/test/test_posixbase.py create mode 100644 twisted/internet/test/test_posixprocess.py create mode 100644 twisted/internet/test/test_process.py create mode 100644 twisted/internet/test/test_protocol.py create mode 100644 twisted/internet/test/test_qtreactor.py create mode 100644 twisted/internet/test/test_serialport.py create mode 100644 twisted/internet/test/test_sigchld.py create mode 100644 twisted/internet/test/test_socket.py create mode 100644 twisted/internet/test/test_stdio.py create mode 100644 twisted/internet/test/test_tcp.py create mode 100644 twisted/internet/test/test_threads.py create mode 100644 twisted/internet/test/test_time.py create mode 100644 twisted/internet/test/test_tls.py create mode 100644 twisted/internet/test/test_udp.py create mode 100644 twisted/internet/test/test_udp_internals.py create mode 100644 twisted/internet/test/test_unix.py create mode 100644 twisted/internet/test/test_win32events.py create mode 100644 twisted/internet/threads.py create mode 100644 twisted/internet/tksupport.py create mode 100644 twisted/internet/udp.py create mode 100644 twisted/internet/unix.py create mode 100644 twisted/internet/utils.py create mode 100644 twisted/internet/win32eventreactor.py create mode 100644 twisted/internet/wxreactor.py create mode 100644 twisted/internet/wxsupport.py create mode 100644 twisted/lore/__init__.py create mode 100644 twisted/lore/_version.py create mode 100644 twisted/lore/default.py create mode 100644 twisted/lore/docbook.py create mode 100644 twisted/lore/htmlbook.py create mode 100644 twisted/lore/indexer.py create mode 100644 twisted/lore/latex.py create mode 100644 twisted/lore/lint.py create mode 100644 twisted/lore/lmath.py create mode 100644 twisted/lore/man2lore.py create mode 100644 twisted/lore/numberer.py create mode 100644 twisted/lore/process.py create mode 100644 twisted/lore/scripts/__init__.py create mode 100755 twisted/lore/scripts/lore.py create mode 100644 twisted/lore/slides.py create mode 100644 twisted/lore/template.mgp create mode 100644 twisted/lore/test/__init__.py create mode 100644 twisted/lore/test/lore_index_file_out.html create mode 100644 twisted/lore/test/lore_index_file_out_multiple.html create mode 100644 twisted/lore/test/lore_index_file_unnumbered_out.html create mode 100644 twisted/lore/test/lore_index_test.xhtml create mode 100644 twisted/lore/test/lore_index_test2.xhtml create mode 100644 twisted/lore/test/lore_numbering_test_out.html create mode 100644 twisted/lore/test/lore_numbering_test_out2.html create mode 100644 twisted/lore/test/simple.html create mode 100644 twisted/lore/test/simple3.html create mode 100644 twisted/lore/test/simple4.html create mode 100644 twisted/lore/test/template.tpl create mode 100644 twisted/lore/test/test_docbook.py create mode 100644 twisted/lore/test/test_latex.py create mode 100644 twisted/lore/test/test_lint.py create mode 100644 twisted/lore/test/test_lmath.py create mode 100644 twisted/lore/test/test_lore.py create mode 100644 twisted/lore/test/test_man2lore.py create mode 100644 twisted/lore/test/test_scripts.py create mode 100644 twisted/lore/test/test_slides.py create mode 100644 twisted/lore/texi.py create mode 100644 twisted/lore/topfiles/NEWS create mode 100644 twisted/lore/topfiles/README create mode 100644 twisted/lore/topfiles/setup.py create mode 100755 twisted/lore/tree.py create mode 100644 twisted/lore/xhtml-lat1.ent create mode 100644 twisted/lore/xhtml-special.ent create mode 100644 twisted/lore/xhtml-symbol.ent create mode 100644 twisted/lore/xhtml1-strict.dtd create mode 100644 twisted/lore/xhtml1-transitional.dtd create mode 100644 twisted/mail/__init__.py create mode 100644 twisted/mail/_version.py create mode 100644 twisted/mail/alias.py create mode 100644 twisted/mail/bounce.py create mode 100644 twisted/mail/imap4.py create mode 100644 twisted/mail/mail.py create mode 100644 twisted/mail/maildir.py create mode 100644 twisted/mail/pb.py create mode 100644 twisted/mail/pop3.py create mode 100644 twisted/mail/pop3client.py create mode 100644 twisted/mail/protocols.py create mode 100644 twisted/mail/relay.py create mode 100644 twisted/mail/relaymanager.py create mode 100644 twisted/mail/scripts/__init__.py create mode 100644 twisted/mail/scripts/mailmail.py create mode 100644 twisted/mail/smtp.py create mode 100644 twisted/mail/tap.py create mode 100644 twisted/mail/test/__init__.py create mode 100644 twisted/mail/test/pop3testserver.py create mode 100644 twisted/mail/test/rfc822.message create mode 100644 twisted/mail/test/test_bounce.py create mode 100644 twisted/mail/test/test_imap.py create mode 100644 twisted/mail/test/test_mail.py create mode 100644 twisted/mail/test/test_mailmail.py create mode 100644 twisted/mail/test/test_options.py create mode 100644 twisted/mail/test/test_pop3.py create mode 100644 twisted/mail/test/test_pop3client.py create mode 100644 twisted/mail/test/test_scripts.py create mode 100644 twisted/mail/test/test_smtp.py create mode 100644 twisted/mail/topfiles/NEWS create mode 100644 twisted/mail/topfiles/README create mode 100644 twisted/mail/topfiles/setup.py create mode 100644 twisted/manhole/__init__.py create mode 100644 twisted/manhole/_inspectro.py create mode 100644 twisted/manhole/explorer.py create mode 100644 twisted/manhole/gladereactor.glade create mode 100644 twisted/manhole/gladereactor.py create mode 100644 twisted/manhole/inspectro.glade create mode 100644 twisted/manhole/logview.glade create mode 100644 twisted/manhole/service.py create mode 100644 twisted/manhole/telnet.py create mode 100644 twisted/manhole/test/__init__.py create mode 100644 twisted/manhole/test/test_explorer.py create mode 100644 twisted/manhole/ui/__init__.py create mode 100644 twisted/manhole/ui/gtk2manhole.glade create mode 100644 twisted/manhole/ui/gtk2manhole.py create mode 100644 twisted/manhole/ui/test/__init__.py create mode 100644 twisted/manhole/ui/test/test_gtk2manhole.py create mode 100644 twisted/names/__init__.py create mode 100644 twisted/names/_version.py create mode 100644 twisted/names/authority.py create mode 100644 twisted/names/cache.py create mode 100644 twisted/names/client.py create mode 100644 twisted/names/common.py create mode 100644 twisted/names/dns.py create mode 100644 twisted/names/error.py create mode 100644 twisted/names/hosts.py create mode 100644 twisted/names/resolve.py create mode 100644 twisted/names/root.py create mode 100644 twisted/names/secondary.py create mode 100644 twisted/names/server.py create mode 100644 twisted/names/srvconnect.py create mode 100644 twisted/names/tap.py create mode 100644 twisted/names/test/__init__.py create mode 100644 twisted/names/test/test_cache.py create mode 100644 twisted/names/test/test_client.py create mode 100644 twisted/names/test/test_common.py create mode 100644 twisted/names/test/test_dns.py create mode 100644 twisted/names/test/test_hosts.py create mode 100644 twisted/names/test/test_names.py create mode 100644 twisted/names/test/test_rootresolve.py create mode 100644 twisted/names/test/test_srvconnect.py create mode 100644 twisted/names/test/test_tap.py create mode 100644 twisted/names/topfiles/NEWS create mode 100644 twisted/names/topfiles/README create mode 100644 twisted/names/topfiles/setup.py create mode 100644 twisted/news/__init__.py create mode 100644 twisted/news/_version.py create mode 100644 twisted/news/database.py create mode 100644 twisted/news/news.py create mode 100644 twisted/news/nntp.py create mode 100644 twisted/news/tap.py create mode 100644 twisted/news/test/__init__.py create mode 100644 twisted/news/test/test_database.py create mode 100644 twisted/news/test/test_news.py create mode 100644 twisted/news/test/test_nntp.py create mode 100644 twisted/news/topfiles/NEWS create mode 100644 twisted/news/topfiles/README create mode 100644 twisted/news/topfiles/setup.py create mode 100644 twisted/pair/__init__.py create mode 100644 twisted/pair/_version.py create mode 100644 twisted/pair/ethernet.py create mode 100644 twisted/pair/ip.py create mode 100644 twisted/pair/raw.py create mode 100644 twisted/pair/rawudp.py create mode 100644 twisted/pair/test/__init__.py create mode 100644 twisted/pair/test/test_ethernet.py create mode 100644 twisted/pair/test/test_ip.py create mode 100644 twisted/pair/test/test_rawudp.py create mode 100644 twisted/pair/topfiles/NEWS create mode 100644 twisted/pair/topfiles/README create mode 100644 twisted/pair/topfiles/setup.py create mode 100644 twisted/pair/tuntap.py create mode 100644 twisted/persisted/__init__.py create mode 100644 twisted/persisted/aot.py create mode 100644 twisted/persisted/crefutil.py create mode 100644 twisted/persisted/dirdbm.py create mode 100644 twisted/persisted/sob.py create mode 100644 twisted/persisted/styles.py create mode 100644 twisted/persisted/test/__init__.py create mode 100644 twisted/persisted/test/test_styles.py create mode 100644 twisted/plugin.py create mode 100644 twisted/plugins/__init__.py create mode 100644 twisted/plugins/cred_anonymous.py create mode 100644 twisted/plugins/cred_file.py create mode 100644 twisted/plugins/cred_memory.py create mode 100644 twisted/plugins/cred_sshkeys.py create mode 100644 twisted/plugins/cred_unix.py create mode 100644 twisted/plugins/twisted_conch.py create mode 100644 twisted/plugins/twisted_core.py create mode 100644 twisted/plugins/twisted_ftp.py create mode 100644 twisted/plugins/twisted_inet.py create mode 100644 twisted/plugins/twisted_lore.py create mode 100644 twisted/plugins/twisted_mail.py create mode 100644 twisted/plugins/twisted_manhole.py create mode 100644 twisted/plugins/twisted_names.py create mode 100644 twisted/plugins/twisted_news.py create mode 100644 twisted/plugins/twisted_portforward.py create mode 100644 twisted/plugins/twisted_qtstub.py create mode 100644 twisted/plugins/twisted_reactors.py create mode 100644 twisted/plugins/twisted_runner.py create mode 100644 twisted/plugins/twisted_socks.py create mode 100644 twisted/plugins/twisted_telnet.py create mode 100644 twisted/plugins/twisted_trial.py create mode 100644 twisted/plugins/twisted_web.py create mode 100644 twisted/plugins/twisted_words.py create mode 100644 twisted/protocols/__init__.py create mode 100644 twisted/protocols/amp.py create mode 100644 twisted/protocols/basic.py create mode 100644 twisted/protocols/dict.py create mode 100644 twisted/protocols/finger.py create mode 100644 twisted/protocols/ftp.py create mode 100644 twisted/protocols/gps/__init__.py create mode 100644 twisted/protocols/gps/nmea.py create mode 100644 twisted/protocols/gps/rockwell.py create mode 100644 twisted/protocols/htb.py create mode 100644 twisted/protocols/ident.py create mode 100644 twisted/protocols/loopback.py create mode 100644 twisted/protocols/memcache.py create mode 100644 twisted/protocols/mice/__init__.py create mode 100644 twisted/protocols/mice/mouseman.py create mode 100644 twisted/protocols/pcp.py create mode 100644 twisted/protocols/policies.py create mode 100644 twisted/protocols/portforward.py create mode 100644 twisted/protocols/postfix.py create mode 100644 twisted/protocols/shoutcast.py create mode 100644 twisted/protocols/sip.py create mode 100644 twisted/protocols/socks.py create mode 100644 twisted/protocols/stateful.py create mode 100644 twisted/protocols/telnet.py create mode 100644 twisted/protocols/test/__init__.py create mode 100644 twisted/protocols/test/test_tls.py create mode 100644 twisted/protocols/tls.py create mode 100644 twisted/protocols/wire.py create mode 100644 twisted/python/__init__.py create mode 100644 twisted/python/_epoll.c create mode 100644 twisted/python/_epoll.pyx create mode 100644 twisted/python/_initgroups.c create mode 100644 twisted/python/_inotify.py create mode 100644 twisted/python/_release.py create mode 100644 twisted/python/_shellcomp.py create mode 100644 twisted/python/compat.py create mode 100644 twisted/python/components.py create mode 100644 twisted/python/constants.py create mode 100644 twisted/python/context.py create mode 100644 twisted/python/deprecate.py create mode 100644 twisted/python/dist.py create mode 100644 twisted/python/failure.py create mode 100644 twisted/python/fakepwd.py create mode 100644 twisted/python/filepath.py create mode 100644 twisted/python/finalize.py create mode 100644 twisted/python/formmethod.py create mode 100644 twisted/python/hashlib.py create mode 100644 twisted/python/hook.py create mode 100644 twisted/python/htmlizer.py create mode 100644 twisted/python/lockfile.py create mode 100644 twisted/python/log.py create mode 100644 twisted/python/logfile.py create mode 100644 twisted/python/modules.py create mode 100644 twisted/python/monkey.py create mode 100644 twisted/python/procutils.py create mode 100644 twisted/python/randbytes.py create mode 100644 twisted/python/rebuild.py create mode 100644 twisted/python/reflect.py create mode 100644 twisted/python/release.py create mode 100644 twisted/python/roots.py create mode 100644 twisted/python/runtime.py create mode 100644 twisted/python/sendmsg.c create mode 100644 twisted/python/shortcut.py create mode 100644 twisted/python/syslog.py create mode 100644 twisted/python/systemd.py create mode 100644 twisted/python/test/__init__.py create mode 100644 twisted/python/test/deprecatedattributes.py create mode 100644 twisted/python/test/modules_helpers.py create mode 100644 twisted/python/test/pullpipe.py create mode 100644 twisted/python/test/test_components.py create mode 100644 twisted/python/test/test_constants.py create mode 100644 twisted/python/test/test_deprecate.py create mode 100644 twisted/python/test/test_dist.py create mode 100644 twisted/python/test/test_fakepwd.py create mode 100644 twisted/python/test/test_hashlib.py create mode 100644 twisted/python/test/test_htmlizer.py create mode 100644 twisted/python/test/test_inotify.py create mode 100644 twisted/python/test/test_release.py create mode 100644 twisted/python/test/test_runtime.py create mode 100644 twisted/python/test/test_sendmsg.py create mode 100755 twisted/python/test/test_shellcomp.py create mode 100644 twisted/python/test/test_syslog.py create mode 100644 twisted/python/test/test_systemd.py create mode 100644 twisted/python/test/test_util.py create mode 100644 twisted/python/test/test_versions.py create mode 100644 twisted/python/test/test_win32.py create mode 100644 twisted/python/test/test_zipstream.py create mode 100644 twisted/python/test/test_zshcomp.py create mode 100644 twisted/python/text.py create mode 100644 twisted/python/threadable.py create mode 100644 twisted/python/threadpool.py create mode 100644 twisted/python/twisted-completion.zsh create mode 100644 twisted/python/urlpath.py create mode 100644 twisted/python/usage.py create mode 100644 twisted/python/util.py create mode 100644 twisted/python/versions.py create mode 100644 twisted/python/win32.py create mode 100644 twisted/python/zippath.py create mode 100644 twisted/python/zipstream.py create mode 100644 twisted/python/zsh/README.txt create mode 100644 twisted/python/zsh/_cftp create mode 100644 twisted/python/zsh/_ckeygen create mode 100644 twisted/python/zsh/_conch create mode 100644 twisted/python/zsh/_lore create mode 100644 twisted/python/zsh/_manhole create mode 100644 twisted/python/zsh/_mktap create mode 100644 twisted/python/zsh/_pyhtmlizer create mode 100644 twisted/python/zsh/_tap2deb create mode 100644 twisted/python/zsh/_tap2rpm create mode 100644 twisted/python/zsh/_tapconvert create mode 100644 twisted/python/zsh/_tkconch create mode 100644 twisted/python/zsh/_tkmktap create mode 100644 twisted/python/zsh/_trial create mode 100644 twisted/python/zsh/_twistd create mode 100644 twisted/python/zsh/_websetroot create mode 100644 twisted/python/zshcomp.py create mode 100644 twisted/runner/__init__.py create mode 100644 twisted/runner/_version.py create mode 100644 twisted/runner/inetd.py create mode 100644 twisted/runner/inetdconf.py create mode 100644 twisted/runner/inetdtap.py create mode 100644 twisted/runner/portmap.c create mode 100644 twisted/runner/procmon.py create mode 100644 twisted/runner/procmontap.py create mode 100644 twisted/runner/test/__init__.py create mode 100644 twisted/runner/test/test_procmon.py create mode 100644 twisted/runner/test/test_procmontap.py create mode 100644 twisted/runner/topfiles/NEWS create mode 100644 twisted/runner/topfiles/README create mode 100644 twisted/runner/topfiles/setup.py create mode 100644 twisted/scripts/__init__.py create mode 100644 twisted/scripts/_twistd_unix.py create mode 100644 twisted/scripts/_twistw.py create mode 100644 twisted/scripts/htmlizer.py create mode 100644 twisted/scripts/manhole.py create mode 100644 twisted/scripts/tap2deb.py create mode 100755 twisted/scripts/tap2rpm.py create mode 100644 twisted/scripts/tapconvert.py create mode 100644 twisted/scripts/test/__init__.py create mode 100644 twisted/scripts/test/test_scripts.py create mode 100644 twisted/scripts/test/test_tap2rpm.py create mode 100644 twisted/scripts/tkunzip.py create mode 100644 twisted/scripts/trial.py create mode 100644 twisted/scripts/twistd.py create mode 100644 twisted/spread/__init__.py create mode 100644 twisted/spread/banana.py create mode 100644 twisted/spread/flavors.py create mode 100644 twisted/spread/interfaces.py create mode 100644 twisted/spread/jelly.py create mode 100644 twisted/spread/pb.py create mode 100644 twisted/spread/publish.py create mode 100644 twisted/spread/ui/__init__.py create mode 100644 twisted/spread/ui/gtk2util.py create mode 100644 twisted/spread/ui/login2.glade create mode 100644 twisted/spread/ui/tktree.py create mode 100644 twisted/spread/ui/tkutil.py create mode 100644 twisted/spread/util.py create mode 100644 twisted/tap/__init__.py create mode 100644 twisted/tap/ftp.py create mode 100644 twisted/tap/manhole.py create mode 100644 twisted/tap/portforward.py create mode 100644 twisted/tap/socks.py create mode 100644 twisted/tap/telnet.py create mode 100644 twisted/test/__init__.py create mode 100644 twisted/test/_preamble.py create mode 100644 twisted/test/crash_test_dummy.py create mode 100644 twisted/test/generator_failure_tests.py create mode 100644 twisted/test/iosim.py create mode 100644 twisted/test/mock_win32process.py create mode 100644 twisted/test/myrebuilder1.py create mode 100644 twisted/test/myrebuilder2.py create mode 100644 twisted/test/plugin_basic.py create mode 100644 twisted/test/plugin_extra1.py create mode 100644 twisted/test/plugin_extra2.py create mode 100644 twisted/test/process_cmdline.py create mode 100644 twisted/test/process_echoer.py create mode 100644 twisted/test/process_fds.py create mode 100644 twisted/test/process_linger.py create mode 100644 twisted/test/process_reader.py create mode 100644 twisted/test/process_signal.py create mode 100644 twisted/test/process_stdinreader.py create mode 100644 twisted/test/process_tester.py create mode 100644 twisted/test/process_tty.py create mode 100644 twisted/test/process_twisted.py create mode 100644 twisted/test/proto_helpers.py create mode 100644 twisted/test/raiser.c create mode 100644 twisted/test/raiser.pyx create mode 100644 twisted/test/reflect_helper_IE.py create mode 100644 twisted/test/reflect_helper_VE.py create mode 100644 twisted/test/reflect_helper_ZDE.py create mode 100644 twisted/test/server.pem create mode 100644 twisted/test/ssl_helpers.py create mode 100644 twisted/test/stdio_test_consumer.py create mode 100644 twisted/test/stdio_test_halfclose.py create mode 100644 twisted/test/stdio_test_hostpeer.py create mode 100644 twisted/test/stdio_test_lastwrite.py create mode 100644 twisted/test/stdio_test_loseconn.py create mode 100644 twisted/test/stdio_test_producer.py create mode 100644 twisted/test/stdio_test_write.py create mode 100644 twisted/test/stdio_test_writeseq.py create mode 100644 twisted/test/test_abstract.py create mode 100644 twisted/test/test_adbapi.py create mode 100644 twisted/test/test_amp.py create mode 100644 twisted/test/test_application.py create mode 100644 twisted/test/test_banana.py create mode 100644 twisted/test/test_compat.py create mode 100644 twisted/test/test_context.py create mode 100644 twisted/test/test_cooperator.py create mode 100644 twisted/test/test_defer.py create mode 100644 twisted/test/test_defgen.py create mode 100644 twisted/test/test_dict.py create mode 100644 twisted/test/test_digestauth.py create mode 100644 twisted/test/test_dirdbm.py create mode 100644 twisted/test/test_doc.py create mode 100644 twisted/test/test_epoll.py create mode 100644 twisted/test/test_error.py create mode 100644 twisted/test/test_explorer.py create mode 100644 twisted/test/test_factories.py create mode 100644 twisted/test/test_failure.py create mode 100644 twisted/test/test_fdesc.py create mode 100644 twisted/test/test_finger.py create mode 100644 twisted/test/test_formmethod.py create mode 100644 twisted/test/test_ftp.py create mode 100644 twisted/test/test_ftp_options.py create mode 100644 twisted/test/test_hook.py create mode 100644 twisted/test/test_htb.py create mode 100644 twisted/test/test_ident.py create mode 100644 twisted/test/test_import.py create mode 100644 twisted/test/test_internet.py create mode 100644 twisted/test/test_iutils.py create mode 100644 twisted/test/test_jelly.py create mode 100644 twisted/test/test_lockfile.py create mode 100644 twisted/test/test_log.py create mode 100644 twisted/test/test_logfile.py create mode 100644 twisted/test/test_loopback.py create mode 100644 twisted/test/test_manhole.py create mode 100644 twisted/test/test_memcache.py create mode 100644 twisted/test/test_modules.py create mode 100644 twisted/test/test_monkey.py create mode 100644 twisted/test/test_newcred.py create mode 100644 twisted/test/test_nmea.py create mode 100644 twisted/test/test_paths.py create mode 100644 twisted/test/test_pb.py create mode 100644 twisted/test/test_pbfailure.py create mode 100644 twisted/test/test_pcp.py create mode 100644 twisted/test/test_persisted.py create mode 100644 twisted/test/test_plugin.py create mode 100644 twisted/test/test_policies.py create mode 100644 twisted/test/test_postfix.py create mode 100644 twisted/test/test_process.py create mode 100644 twisted/test/test_protocols.py create mode 100644 twisted/test/test_randbytes.py create mode 100644 twisted/test/test_rebuild.py create mode 100644 twisted/test/test_reflect.py create mode 100644 twisted/test/test_roots.py create mode 100644 twisted/test/test_shortcut.py create mode 100644 twisted/test/test_sip.py create mode 100644 twisted/test/test_sob.py create mode 100644 twisted/test/test_socks.py create mode 100644 twisted/test/test_ssl.py create mode 100644 twisted/test/test_sslverify.py create mode 100644 twisted/test/test_stateful.py create mode 100644 twisted/test/test_stdio.py create mode 100644 twisted/test/test_strcred.py create mode 100644 twisted/test/test_strerror.py create mode 100644 twisted/test/test_stringtransport.py create mode 100644 twisted/test/test_strports.py create mode 100644 twisted/test/test_task.py create mode 100644 twisted/test/test_tcp.py create mode 100644 twisted/test/test_tcp_internals.py create mode 100644 twisted/test/test_text.py create mode 100644 twisted/test/test_threadable.py create mode 100644 twisted/test/test_threadpool.py create mode 100644 twisted/test/test_threads.py create mode 100644 twisted/test/test_timehelpers.py create mode 100644 twisted/test/test_tpfile.py create mode 100644 twisted/test/test_twistd.py create mode 100644 twisted/test/test_udp.py create mode 100644 twisted/test/test_unix.py create mode 100644 twisted/test/test_usage.py create mode 100644 twisted/test/testutils.py create mode 100644 twisted/test/time_helpers.py create mode 100644 twisted/topfiles/CREDITS create mode 100644 twisted/topfiles/ChangeLog.Old create mode 100644 twisted/topfiles/NEWS create mode 100644 twisted/topfiles/README create mode 100644 twisted/topfiles/setup.py create mode 100644 twisted/trial/__init__.py create mode 100644 twisted/trial/itrial.py create mode 100644 twisted/trial/reporter.py create mode 100644 twisted/trial/runner.py create mode 100644 twisted/trial/test/__init__.py create mode 100644 twisted/trial/test/detests.py create mode 100644 twisted/trial/test/erroneous.py create mode 100644 twisted/trial/test/mockcustomsuite.py create mode 100644 twisted/trial/test/mockcustomsuite2.py create mode 100644 twisted/trial/test/mockcustomsuite3.py create mode 100644 twisted/trial/test/mockdoctest.py create mode 100644 twisted/trial/test/moduleself.py create mode 100644 twisted/trial/test/moduletest.py create mode 100644 twisted/trial/test/notpython create mode 100644 twisted/trial/test/novars.py create mode 100644 twisted/trial/test/packages.py create mode 100644 twisted/trial/test/sample.py create mode 100644 twisted/trial/test/scripttest.py create mode 100644 twisted/trial/test/suppression.py create mode 100644 twisted/trial/test/test_assertions.py create mode 100644 twisted/trial/test/test_deferred.py create mode 100644 twisted/trial/test/test_doctest.py create mode 100644 twisted/trial/test/test_keyboard.py create mode 100644 twisted/trial/test/test_loader.py create mode 100644 twisted/trial/test/test_log.py create mode 100644 twisted/trial/test/test_output.py create mode 100644 twisted/trial/test/test_plugins.py create mode 100644 twisted/trial/test/test_pyunitcompat.py create mode 100644 twisted/trial/test/test_reporter.py create mode 100644 twisted/trial/test/test_runner.py create mode 100644 twisted/trial/test/test_script.py create mode 100644 twisted/trial/test/test_test_visitor.py create mode 100644 twisted/trial/test/test_testcase.py create mode 100644 twisted/trial/test/test_tests.py create mode 100644 twisted/trial/test/test_util.py create mode 100644 twisted/trial/test/test_warning.py create mode 100644 twisted/trial/test/weird.py create mode 100644 twisted/trial/unittest.py create mode 100644 twisted/trial/util.py create mode 100644 twisted/web/__init__.py create mode 100644 twisted/web/_auth/__init__.py create mode 100644 twisted/web/_auth/basic.py create mode 100644 twisted/web/_auth/digest.py create mode 100644 twisted/web/_auth/wrapper.py create mode 100644 twisted/web/_element.py create mode 100644 twisted/web/_flatten.py create mode 100644 twisted/web/_newclient.py create mode 100644 twisted/web/_stan.py create mode 100644 twisted/web/_version.py create mode 100644 twisted/web/client.py create mode 100644 twisted/web/demo.py create mode 100644 twisted/web/distrib.py create mode 100644 twisted/web/domhelpers.py create mode 100644 twisted/web/error.py create mode 100644 twisted/web/failure.xhtml create mode 100644 twisted/web/google.py create mode 100644 twisted/web/guard.py create mode 100644 twisted/web/html.py create mode 100644 twisted/web/http.py create mode 100644 twisted/web/http_headers.py create mode 100644 twisted/web/iweb.py create mode 100644 twisted/web/microdom.py create mode 100644 twisted/web/proxy.py create mode 100644 twisted/web/resource.py create mode 100644 twisted/web/rewrite.py create mode 100644 twisted/web/script.py create mode 100644 twisted/web/server.py create mode 100644 twisted/web/soap.py create mode 100644 twisted/web/static.py create mode 100644 twisted/web/sux.py create mode 100644 twisted/web/tap.py create mode 100644 twisted/web/template.py create mode 100644 twisted/web/test/__init__.py create mode 100644 twisted/web/test/_util.py create mode 100755 twisted/web/test/test_cgi.py create mode 100755 twisted/web/test/test_distrib.py create mode 100644 twisted/web/test/test_domhelpers.py create mode 100644 twisted/web/test/test_error.py create mode 100644 twisted/web/test/test_flatten.py create mode 100644 twisted/web/test/test_http.py create mode 100644 twisted/web/test/test_http_headers.py create mode 100644 twisted/web/test/test_httpauth.py create mode 100644 twisted/web/test/test_newclient.py create mode 100644 twisted/web/test/test_proxy.py create mode 100644 twisted/web/test/test_resource.py create mode 100644 twisted/web/test/test_script.py create mode 100644 twisted/web/test/test_soap.py create mode 100644 twisted/web/test/test_stan.py create mode 100644 twisted/web/test/test_static.py create mode 100644 twisted/web/test/test_tap.py create mode 100644 twisted/web/test/test_template.py create mode 100644 twisted/web/test/test_util.py create mode 100644 twisted/web/test/test_vhost.py create mode 100644 twisted/web/test/test_web.py create mode 100644 twisted/web/test/test_webclient.py create mode 100644 twisted/web/test/test_wsgi.py create mode 100644 twisted/web/test/test_xml.py create mode 100644 twisted/web/test/test_xmlrpc.py create mode 100644 twisted/web/topfiles/NEWS create mode 100644 twisted/web/topfiles/README create mode 100644 twisted/web/topfiles/setup.py create mode 100644 twisted/web/twcgi.py create mode 100644 twisted/web/util.py create mode 100644 twisted/web/vhost.py create mode 100644 twisted/web/wsgi.py create mode 100644 twisted/web/xmlrpc.py create mode 100644 twisted/words/__init__.py create mode 100644 twisted/words/_version.py create mode 100644 twisted/words/ewords.py create mode 100644 twisted/words/im/__init__.py create mode 100644 twisted/words/im/baseaccount.py create mode 100644 twisted/words/im/basechat.py create mode 100644 twisted/words/im/basesupport.py create mode 100644 twisted/words/im/instancemessenger.glade create mode 100644 twisted/words/im/interfaces.py create mode 100644 twisted/words/im/ircsupport.py create mode 100644 twisted/words/im/locals.py create mode 100644 twisted/words/im/pbsupport.py create mode 100644 twisted/words/iwords.py create mode 100644 twisted/words/protocols/__init__.py create mode 100644 twisted/words/protocols/irc.py create mode 100644 twisted/words/protocols/jabber/__init__.py create mode 100644 twisted/words/protocols/jabber/client.py create mode 100644 twisted/words/protocols/jabber/component.py create mode 100644 twisted/words/protocols/jabber/error.py create mode 100644 twisted/words/protocols/jabber/ijabber.py create mode 100644 twisted/words/protocols/jabber/jid.py create mode 100644 twisted/words/protocols/jabber/jstrports.py create mode 100644 twisted/words/protocols/jabber/sasl.py create mode 100644 twisted/words/protocols/jabber/sasl_mechanisms.py create mode 100644 twisted/words/protocols/jabber/xmlstream.py create mode 100644 twisted/words/protocols/jabber/xmpp_stringprep.py create mode 100644 twisted/words/protocols/msn.py create mode 100644 twisted/words/protocols/oscar.py create mode 100644 twisted/words/service.py create mode 100644 twisted/words/tap.py create mode 100644 twisted/words/test/__init__.py create mode 100644 twisted/words/test/test_basechat.py create mode 100644 twisted/words/test/test_basesupport.py create mode 100644 twisted/words/test/test_domish.py create mode 100644 twisted/words/test/test_irc.py create mode 100644 twisted/words/test/test_irc_service.py create mode 100644 twisted/words/test/test_ircsupport.py create mode 100644 twisted/words/test/test_jabberclient.py create mode 100644 twisted/words/test/test_jabbercomponent.py create mode 100644 twisted/words/test/test_jabbererror.py create mode 100644 twisted/words/test/test_jabberjid.py create mode 100644 twisted/words/test/test_jabberjstrports.py create mode 100644 twisted/words/test/test_jabbersasl.py create mode 100644 twisted/words/test/test_jabbersaslmechanisms.py create mode 100644 twisted/words/test/test_jabberxmlstream.py create mode 100644 twisted/words/test/test_jabberxmppstringprep.py create mode 100644 twisted/words/test/test_msn.py create mode 100644 twisted/words/test/test_oscar.py create mode 100644 twisted/words/test/test_service.py create mode 100644 twisted/words/test/test_tap.py create mode 100644 twisted/words/test/test_xishutil.py create mode 100644 twisted/words/test/test_xmlstream.py create mode 100644 twisted/words/test/test_xmpproutertap.py create mode 100644 twisted/words/test/test_xpath.py create mode 100644 twisted/words/topfiles/NEWS create mode 100644 twisted/words/topfiles/README create mode 100644 twisted/words/topfiles/setup.py create mode 100644 twisted/words/xish/__init__.py create mode 100644 twisted/words/xish/domish.py create mode 100644 twisted/words/xish/utility.py create mode 100644 twisted/words/xish/xmlstream.py create mode 100644 twisted/words/xish/xpath.py create mode 100644 twisted/words/xish/xpathparser.g create mode 100644 twisted/words/xish/xpathparser.py create mode 100644 twisted/words/xmpproutertap.py diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..52071ed --- /dev/null +++ b/INSTALL @@ -0,0 +1,33 @@ +Requirements + + Python 2.5, 2.6 or 2.7. + + Zope Interfaces 3.3.0 or better (http://pypi.python.org/pypi/zope.interface) + + pyOpenSSL () is required for any SSL APIs. On + Windows, version 0.10 or newer is required. pyOpenSSL 0.10 or newer is also + preferred on other platforms, but older versions will work as well. + + On Windows pywin32 () is + required. Build 215 or later is highly recommended for reliable operation + (this is already included in ActivePython). + + If you would like to use Trial's subunit reporter, then you will need to + install Subunit 0.0.2 or later (https://launchpad.net/subunit). + +Installation + + * Debian and Ubuntu + Packages are included in the main distribution. + + * FreeBSD, Gentoo + Twisted is in their package repositories. + + * Win32 + Installers are available from http://twistedmatrix.com/ + + * Other + As with other Python packages, the standard way of installing from source + is: + + python setup.py install diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..159debb --- /dev/null +++ b/LICENSE @@ -0,0 +1,57 @@ +Copyright (c) 2001-2012 +Allen Short +Andy Gayton +Andrew Bennetts +Antoine Pitrou +Apple Computer, Inc. +Benjamin Bruheim +Bob Ippolito +Canonical Limited +Christopher Armstrong +David Reid +Donovan Preston +Eric Mangold +Eyal Lotem +Itamar Turner-Trauring +James Knight +Jason A. Mobarak +Jean-Paul Calderone +Jessica McKellar +Jonathan Jacobs +Jonathan Lange +Jonathan D. Simms +Jürgen Hermann +Kevin Horn +Kevin Turner +Mary Gardiner +Matthew Lefkowitz +Massachusetts Institute of Technology +Moshe Zadka +Paul Swartz +Pavel Pergamenshchik +Ralph Meijer +Sean Riley +Software Freedom Conservancy +Travis B. Hartwell +Thijs Triemstra +Thomas Herve +Timothy Allen + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..0f5f154 --- /dev/null +++ b/NEWS @@ -0,0 +1,3168 @@ +Ticket numbers in this file can be looked up by visiting +http://twistedmatrix.com/trac/ticket/ + +Twisted Core 12.1.0 (2012-06-02) +================================ + +Features +-------- + - The kqueue reactor has been revived. (#1918) + - twisted.python.filepath now provides IFilePath, an interface for + file path objects. (#2176) + - New gtk3 and gobject-introspection reactors have been added. + (#4558) + - gtk and glib reactors now run I/O and scheduled events with lower + priority, to ensure the UI stays responsive. (#5067) + - IReactorTCP.connectTCP() can now accept IPv6 address literals + (although not hostnames) in order to support connecting to IPv6 + hosts. (#5085) + - twisted.internet.interfaces.IReactorSocket, a new interface, is now + supported by some reactors to listen on sockets set up by external + software (eg systemd or launchd). (#5248) + - twisted.internet.endpoints.clientFromString now also supports + strings in the form of tcp:example.com:80 and ssl:example.com:4321 + (#5358) + - twisted.python.constants.Flags now provides a way to define + collections of flags for bitvector-type uses. (#5384) + - The epoll(7)-based reactor is now the default reactor on Linux. + (#5478) + - twisted.python.runtime.platform.isLinux can be used to check if + Twisted is running on Linux. (#5491) + - twisted.internet.endpoints.serverFromString now recognizes a + "systemd" endpoint type, for listening on a server port inherited + from systemd. (#5575) + - Connections created using twisted.internet.interfaces.IReactorUNIX + now support sending and receiving file descriptors between + different processes. (#5615) + - twisted.internet.endpoints.clientFromString now supports UNIX + client endpoint strings with the path argument specified like + "unix:/foo/bar" in addition to the old style, "unix:path=/foo/bar". + (#5640) + - twisted.protocols.amp.Descriptor is a new AMP argument type which + supports passing file descriptors as AMP command arguments over + UNIX connections. (#5650) + +Bugfixes +-------- + - twisted.internet.abstract.FileDescriptor implements + twisted.internet.interfaces.IPushProducer instead of + twisted.internet.interfaces.IProducer. + twisted.internet.iocpreactor.abstract.FileHandle implements + twisted.internet.interfaces.IPushProducer instead of + twisted.internet.interfaces.IProducer. (#4386) + - The epoll reactor now supports reading/writing to regular files on + stdin/stdout. (#4429) + - Calling .cancel() on any Twisted-provided client endpoint + (TCP4ClientEndpoint, UNIXClientEndpoint, SSL4ClientEndpoint) now + works as documented, rather than logging an AlreadyCalledError. + (#4710) + - A leak of OVERLAPPED structures in some IOCP error cases has been + fixed. (#5372) + - twisted.internet._pollingfile._PollableWritePipe now checks for + outgoing unicode data in write() and writeSequence() instead of + checkWork(). (#5412) + +Improved Documentation +---------------------- + - "Working from Twisted's Subversion repository" links to UQDS and + Combinator are now updated. (#5545) + - Added tkinterdemo.py, an example of Tkinter integration. (#5631) + +Deprecations and Removals +------------------------- + - The 'unsigned' flag to twisted.scripts.tap2rpm.MyOptions is now + deprecated. (#4086) + - Removed the unreachable _fileUrandom method from + twisted.python.randbytes.RandomFactory. (#4530) + - twisted.persisted.journal is removed, deprecated since Twisted + 11.0. (#4805) + - Support for pyOpenSSL 0.9 and older is now deprecated. pyOpenSSL + 0.10 or newer will soon be required in order to use Twisted's SSL + features. (#4974) + - backwardsCompatImplements and fixClassImplements are removed from + twisted.python.components, deprecated in 2006. (#5034) + - twisted.python.reflect.macro was removed, deprecated since Twisted + 8.2. (#5035) + - twisted.python.text.docstringLStrip, deprecated since Twisted + 10.2.0, has been removed (#5036) + - Removed the deprecated dispatch and dispatchWithCallback methods + from twisted.python.threadpool.ThreadPool (deprecated since 8.0) + (#5037) + - twisted.scripts.tapconvert is now deprecated. (#5038) + - twisted.python.reflect's Settable, AccessorType, PropertyAccessor, + Accessor, OriginalAccessor and Summer are now deprecated. (#5451) + - twisted.python.threadpool.ThreadSafeList (deprecated in 10.1) is + removed. (#5473) + - twisted.application.app.initialLog, deprecated since Twisted 8.2.0, + has been removed. (#5480) + - twisted.spread.refpath was deleted, deprecated since Twisted 9.0. + (#5482) + - twisted.python.otp, deprecated since 9.0, is removed. (#5493) + - Removed `dsu`, `moduleMovedForSplit`, and `dict` from + twisted.python.util (deprecated since 10.2) (#5516) + +Other +----- + - #2723, #3114, #3398, #4388, #4489, #5055, #5116, #5242, #5380, + #5392, #5447, #5457, #5484, #5489, #5492, #5494, #5512, #5523, + #5558, #5572, #5583, #5593, #5620, #5621, #5623, #5625, #5637, + #5652, #5653, #5656, #5657, #5660, #5673 + + +Twisted Conch 12.1.0 (2012-06-02) +================================= + +Features +-------- + - twisted.conch.tap now supports cred plugins (#4753) + +Bugfixes +-------- + - twisted.conch.client.knownhosts now handles errors encountered + parsing hashed entries in a known hosts file. (#5616) + +Improved Documentation +---------------------- + - Conch examples window.tac and telnet_echo.tac now have better + explanations. (#5590) + +Other +----- + - #5580 + + +Twisted Lore 12.1.0 (2012-06-02) +================================ + +Bugfixes +-------- + - twisted.plugins.twisted_lore's MathProcessor plugin is now + associated with the correct implementation module. (#5326) + + +Twisted Mail 12.1.0 (2012-06-02) +================================ + +Bugfixes +-------- + - twistd mail --auth, broken in 11.0, now correctly connects + authentication to the portal being used (#5219) + +Other +----- + - #5686 + + +Twisted Names 12.1.0 (2012-06-02) +================================= + +Features +-------- + - "twistd dns" secondary server functionality and + twisted.names.secondary now support retrieving zone information + from a master running on a non-standard DNS port. (#5468) + +Bugfixes +-------- + - twisted.names.dns.DNSProtocol instances no longer throw an + exception when disconnecting. (#5471) + - twisted.names.tap.makeService (thus also "twistd dns") now makes a + DNS server which gives precedence to the hosts file from its + configuration over the remote DNS servers from its configuration. + (#5524) + - twisted.name.cache.CacheResolver now makes sure TTLs on returned + results are never negative. (#5579) + - twisted.names.cache.CacheResolver entries added via the initializer + are now timed out correctly. (#5638) + +Improved Documentation +---------------------- + - The examples now contain instructions on how to run them and + descriptions in the examples index. (#5588) + +Deprecations and Removals +------------------------- + - The deprecated twisted.names.dns.Record_mx.exchange attribute was + removed. (#4549) + + +Twisted News 12.1.0 (2012-06-02) +================================ + +Bugfixes +-------- + - twisted.news.nntp.NNTPServer now has additional test coverage and + less redundant implementation code. (#5537) + +Deprecations and Removals +------------------------- + - The ability to pass a string article to NNTPServer._gotBody and + NNTPServer._gotArticle in t.news.nntp has been deprecated for years + and is now removed. (#4548) + + +Twisted Pair 12.1.0 (2012-06-02) +================================ + +No significant changes have been made for this release. + + +Twisted Runner 12.1.0 (2012-06-02) +================================== + +Deprecations and Removals +------------------------- + - ProcessMonitor.active, consistencyDelay, and consistency in + twisted.runner.procmon were deprecated since 10.1 have been + removed. (#5517) + + +Twisted Web 12.1.0 (2012-06-02) +=============================== + +Features +-------- + - twisted.web.client.Agent and ProxyAgent now support persistent + connections. (#3420) + - Added twisted.web.template.renderElement, a function which renders + an Element to a response. (#5395) + - twisted.web.client.HTTPConnectionPool now ensures that failed + queries on persistent connections are retried, when possible. + (#5479) + - twisted.web.template.XMLFile now supports FilePath objects. (#5509) + - twisted.web.template.renderElement takes a doctype keyword + argument, which will be written as the first line of the response, + defaulting to the HTML5 doctype. (#5560) + +Bugfixes +-------- + - twisted.web.util.formatFailure now quotes all data in its output to + avoid it being mistakenly interpreted as markup. (#4896) + - twisted.web.distrib now lets distributed servers set the response + message. (#5525) + +Deprecations and Removals +------------------------- + - PHP3Script and PHPScript were removed from twisted.web.twcgi, + deprecated since 10.1. Use twcgi.FilteredScript instead. (#5456) + - twisted.web.template.XMLFile's support for file objects and + filenames is now deprecated. Use the new support for FilePath + objects. (#5509) + - twisted.web.server.date_time_string and + twisted.web.server.string_date_time are now deprecated in favor of + twisted.web.http.datetimeToString and twisted.web. + http.stringToDatetime (#5535) + +Other +----- + - #4966, #5460, #5490, #5591, #5602, #5609, #5612 + + +Twisted Words 12.1.0 (2012-06-02) +================================= + +Bugfixes +-------- + - twisted.words.protocols.irc.DccChatFactory.buildProtocol now + returns the protocol object that it creates (#3179) + - twisted.words.im no longer offers an empty threat of a rewrite on + import. (#5598) + +Other +----- + - #5555, #5595 + + +Twisted Core 12.0.0 (2012-02-10) +================================ + +Features +-------- + - The interface argument to IReactorTCP.listenTCP may now be an IPv6 + address literal, allowing the creation of IPv6 TCP servers. (#5084) + - twisted.python.constants.Names now provides a way to define + collections of named constants, similar to the "enum type" feature + of C or Java. (#5382) + - twisted.python.constants.Values now provides a way to define + collections of named constants with arbitrary values. (#5383) + +Bugfixes +-------- + - Fixed an obscure case where connectionLost wasn't called on the + protocol when using half-close. (#3037) + - UDP ports handle socket errors better on Windows. (#3396) + - When idle, the gtk2 and glib2 reactors no longer wake up 10 times a + second. (#4376) + - Prevent a rare situation involving TLS transports, where a producer + may be erroneously left unpaused. (#5347) + - twisted.internet.iocpreactor.iocpsupport now has fewer 64-bit + compile warnings. (#5373) + - The GTK2 reactor is now more responsive on Windows. (#5396) + - TLS transports now correctly handle producer registration after the + connection has been lost. (#5439) + - twisted.protocols.htb.Bucket now empties properly with a non-zero + drip rate. (#5448) + - IReactorSSL and ITCPTransport.startTLS now synchronously propagate + errors from the getContext method of context factories, instead of + being capturing them and logging them as unhandled. (#5449) + +Improved Documentation +---------------------- + - The multicast documentation has been expanded. (#4262) + - twisted.internet.defer.Deferred now documents more return values. + (#5399) + - Show a better starting page at + http://twistedmatrix.com/documents/current (#5429) + +Deprecations and Removals +------------------------- + - Remove the deprecated module twisted.enterprise.reflector. (#4108) + - Removed the deprecated module twisted.enterprise.row. (#4109) + - Remove the deprecated module twisted.enterprise.sqlreflector. + (#4110) + - Removed the deprecated module twisted.enterprise.util, as well as + twisted.enterprise.adbapi.safe. (#4111) + - Python 2.4 is no longer supported on any platform. (#5060) + - Removed printTraceback and noOperation from twisted.spread.pb, + deprecated since Twisted 8.2. (#5370) + +Other +----- + - #1712, #2725, #5284, #5325, #5331, #5362, #5364, #5371, #5407, + #5427, #5430, #5431, #5440, #5441 + + +Twisted Conch 12.0.0 (2012-02-10) +================================= + +Features +-------- + - use Python shadow module for authentication if it's available + (#3242) + +Bugfixes +-------- + - twisted.conch.ssh.transport.messages no longer ends with with old + message IDs on platforms with differing dict() orderings (#5352) + +Other +----- + - #5225 + + +Twisted Lore 12.0.0 (2012-02-10) +================================ + +No significant changes have been made for this release. + + +Twisted Mail 12.0.0 (2012-02-10) +================================ + +No significant changes have been made for this release. + + +Twisted Names 12.0.0 (2012-02-10) +================================= + +Bugfixes +-------- + - twisted.names.dns.Message now sets the `auth` flag on RRHeader + instances it creates to reflect the authority of the message + itself. (#5421) + + +Twisted News 12.0.0 (2012-02-10) +================================ + +No significant changes have been made for this release. + + +Twisted Pair 12.0.0 (2012-02-10) +================================ + +No significant changes have been made for this release. + + +Twisted Runner 12.0.0 (2012-02-10) +================================== + +No significant changes have been made for this release. + + +Twisted Web 12.0.0 (2012-02-10) +=============================== + +Features +-------- + - twisted.web.util.redirectTo now raises TypeError if the URL passed + to it is a unicode string instead of a byte string. (#5236) + - The new class twisted.web.template.CharRef provides support for + inserting numeric character references in output generated by + twisted.web.template. (#5408) + +Improved Documentation +---------------------- + - The Twisted Web howto now has a section on proxies and reverse + proxies. (#399) + - The web client howto now covers ContentDecoderAgent and links to an + example of its use. (#5415) + +Other +----- + - #5404, #5438 + + +Twisted Words 12.0.0 (2012-02-10) +================================= + +Improved Documentation +---------------------- + - twisted.words.im.basechat now has improved API documentation. + (#2458) + +Other +----- + - #5401 + + +Twisted Core 11.1.0 (2011-11-15) +================================ + +Features +-------- + - TCP and TLS transports now support abortConnection() which, unlike + loseConnection(), always closes the connection immediately. (#78) + - Failures received over PB when tracebacks are disabled now display + the wrapped exception value when they are printed. (#581) + - twistd now has a --logger option, allowing the use of custom log + observers. (#638) + - The default reactor is now poll(2) on platforms that support it. + (#2234) + - twisted.internet.defer.inlineCallbacks(f) now raises TypeError when + f returns something other than a generator or uses returnValue as a + non-generator. (#2501) + - twisted.python.usage.Options now supports performing Zsh tab- + completion on demand. Tab-completion for Twisted commands is + supported out-of-the-box on any recent zsh release. Third-party + commands may take advantage of zsh completion by copying the + provided stub file. (#3078) + - twisted.protocols.portforward now uses flow control between its + client and server connections to avoid having to buffer an + unbounded amount of data when one connection is slower than the + other. (#3350) + - On Windows, the select, IOCP, and Gtk2 reactors now implement + IReactorWin32Events (most notably adding support for serial ports + to these reactors). (#4862) + - twisted.python.failure.Failure no longer captures the state of + locals and globals of all stack frames by default, because it is + expensive to do and rarely used. You can pass captureVars=True to + Failure's constructor if you want to capture this data. (#5011) + - twisted.web.client now supports automatic content-decoding via + twisted.web.client.ContentDecoderAgent, gzip being supported for + now. (#5053) + - Protocols may now implement ILoggingContext to customize their + logging prefix. twisted.protocols.policies.ProtocolWrapper and the + endpoints wrapper now take advantage of this feature to ensure the + application protocol is still reflected in logs. (#5062) + - AMP's raw message-parsing performance was increased by + approximately 12%. (#5075) + - Twisted is now installable on PyPy, because some incompatible C + extensions are no longer built. (#5158) + - twisted.internet.defer.gatherResults now accepts a consumeErrors + parameter, with the same meaning as the corresponding argument for + DeferredList. (#5159) + - Added RMD (remove directory) support to the FTP client. (#5259) + - Server factories may now implement ILoggingContext to customize the + name that is logged when the reactor uses one to start listening on + a port. (#5292) + - The implementations of ITransport.writeSequence will now raise + TypeError if passed unicode strings. (#3896) + - iocp reactor now operates correctly on 64 bit Python runtimes. + (#4669) + - twistd ftp now supports the cred plugin. (#4752) + - twisted.python.filepath.FilePath now has an API to retrieve the + permissions of the underlying file, and two methods to determine + whether it is a block device or a socket. (#4813) + - twisted.trial.unittest.TestCase is now compatible with Python 2.7's + assertDictEqual method. (#5291) + +Bugfixes +-------- + - The IOCP reactor now does not try to erroneously pause non- + streaming producers. (#745) + - Unicode print statements no longer blow up when using Twisted's + logging system. (#1990) + - Process transports on Windows now support the `writeToChild` method + (but only for stdin). (#2838) + - Zsh tab-completion of Twisted commands no longer relies on + statically generated files, but instead generates results on-the- + fly - ensuring accurate tab-completion for the version of Twisted + actually in use. (#3078) + - LogPublishers don't use the global log publisher for reporting + broken observers anymore. (#3307) + - trial and twistd now add the current directory to sys.path even + when running as root or on Windows. mktap, tapconvert, and + pyhtmlizer no longer add the current directory to sys.path. (#3526) + - twisted.internet.win32eventreactor now stops immediately if + reactor.stop() is called from an IWriteDescriptor.doWrite + implementation instead of delaying shutdown for an arbitrary period + of time. (#3824) + - twisted.python.log now handles RuntimeErrors more gracefully, and + always restores log observers after an exception is raised. (#4379) + - twisted.spread now supports updating new-style RemoteCache + instances. (#4447) + - twisted.spread.pb.CopiedFailure will no longer be thrown into a + generator as a (deprecated) string exception but as a + twisted.spread.pb.RemoteException. (#4520) + - trial now gracefully handles the presence of objects in sys.modules + which respond to attributes being set on them by modifying + sys.modules. (#4748) + - twisted.python.deprecate.deprecatedModuleAttribute no longer + spuriously warns twice when used to deprecate a module within a + package. This should make it easier to write unit tests for + deprecated modules. (#4806) + - When pyOpenSSL 0.10 or newer is available, SSL support now uses + Twisted for all I/O and only relies on OpenSSL for cryptography, + avoiding a number of tricky, potentially broken edge cases. (#4854) + - IStreamClientEndpointStringParser.parseStreamClient now correctly + describes how it will be called by clientFromString (#4956) + - twisted.internet.defer.Deferreds are 10 times faster at handling + exceptions raised from callbacks, except when setDebugging(True) + has been called. (#5011) + - twisted.python.filepath.FilePath.copyTo now raises OSError(ENOENT) + if the source path being copied does not exist. (#5017) + - twisted.python.modules now supports iterating over namespace + packages without yielding duplicates. (#5030) + - reactor.spawnProcess now uses the resource module to guess the + maximum possible open file descriptor when /dev/fd exists but gives + incorrect results. (#5052) + - The memory BIO TLS/SSL implementation now supports producers + correctly. (#5063) + - twisted.spread.pb.Broker no longer creates an uncollectable + reference cycle when the logout callback holds a reference to the + client mind object. (#5079) + - twisted.protocols.tls, and SSL/TLS support in general, now do clean + TLS close alerts when disconnecting. (#5118) + - twisted.persisted.styles no longer uses the deprecated allYourBase + function (#5193) + - Stream client endpoints now start (doStart) and stop (doStop) the + factory passed to the connect method, instead of a different + implementation-detail factory. (#5278) + - SSL ports now consistently report themselves as SSL rather than TCP + when logging their close message. (#5292) + - Serial ports now deliver connectionLost to the protocol when + closed. (#3690) + - win32eventreactor now behaves better in certain rare cases in which + it previously would have failed to deliver connection lost + notification to a protocol. (#5233) + +Improved Documentation +---------------------- + - Test driven development with Twisted and Trial is now documented in + a how-to. (#2443) + - A new howto-style document covering twisted.protocols.amp has been + added. (#3476) + - Added sample implementation of a Twisted push producer/consumer + system. (#3835) + - The "Deferred in Depth" tutorial now includes accurate output for + the deferred_ex2.py example. (#3941) + - The server howto now covers the Factory.buildProtocol method. + (#4761) + - The testing standard and the trial tutorial now recommend the + `assertEqual` form of assertions rather than the `assertEquals` to + coincide with the standard library unittest's preference. (#4989) + - twisted.python.filepath.FilePath's methods now have more complete + API documentation (docstrings). (#5027) + - The Clients howto now uses buildProtocol more explicitly, hopefully + making it easier to understand where Protocol instances come from. + (#5044) + +Deprecations and Removals +------------------------- + - twisted.internet.interfaces.IFinishableConsumer is now deprecated. + (#2661) + - twisted.python.zshcomp is now deprecated in favor of the tab- + completion system in twisted.python.usage (#3078) + - The unzip and unzipIter functions in twisted.python.zipstream are + now deprecated. (#3666) + - Options.optStrings, deprecated for 7 years, has been removed. Use + Options.optParameters instead. (#4552) + - Removed the deprecated twisted.python.dispatch module. (#5023) + - Removed the twisted.runner.procutils module that was deprecated in + Twisted 2.3. (#5049) + - Removed twisted.trial.runner.DocTestSuite, deprecated in Twisted + 8.0. (#5111) + - twisted.scripts.tkunzip is now deprecated. (#5140) + - Deprecated option --password-file in twistd ftp (#4752) + - mktap, deprecated since Twisted 8.0, has been removed. (#5293) + +Other +----- + - #1946, #2562, #2674, #3074, #3077, #3776, #4227, #4539, #4587, + #4619, #4624, #4629, #4683, #4690, #4702, #4778, #4944, #4945, + #4949, #4952, #4957, #4979, #4980, #4987, #4990, #4994, #4995, + #4997, #5003, #5008, #5009, #5012, #5019, #5042, #5046, #5051, + #5065, #5083, #5088, #5089, #5090, #5101, #5108, #5109, #5112, + #5114, #5125, #5128, #5131, #5136, #5139, #5144, #5146, #5147, + #5156, #5160, #5165, #5191, #5205, #5215, #5217, #5218, #5223, + #5243, #5244, #5250, #5254, #5261, #5266, #5273, #5299, #5301, + #5302, #5304, #5308, #5311, #5321, #5322, #5327, #5328, #5332, + #5336 + + +Twisted Conch 11.1.0 (2011-11-15) +================================= + +Features +-------- + - twisted.conch.ssh.filetransfer.FileTransferClient now handles short + status messages, not strictly allowed by the RFC, but sent by some + SSH implementations. (#3009) + - twisted.conch.manhole now supports CTRL-A and CTRL-E to trigger + HOME and END functions respectively. (#5252) + +Bugfixes +-------- + - When run from an unpacked source tarball or a VCS checkout, the + bin/conch/ scripts will now use the version of Twisted they are + part of. (#3526) + - twisted.conch.insults.window.ScrolledArea now passes no extra + arguments to object.__init__ (which works on more versions of + Python). (#4197) + - twisted.conch.telnet.ITelnetProtocol now has the correct signature + for its unhandledSubnegotiation() method. (#4751) + - twisted.conch.ssh.userauth.SSHUserAuthClient now more closely + follows the RFC 4251 definition of boolean values when negotiating + for key-based authentication, allowing better interoperability with + other SSH implementations. (#5241) + - twisted.conch.recvline.RecvLine now ignores certain function keys + in its keystrokeReceived method instead of raising an exception. + (#5246) + +Deprecations and Removals +------------------------- + - The --user option to `twistd manhole' has been removed as it was + dead code with no functionality associated with it. (#5283) + +Other +----- + - #5107, #5256, #5349 + + +Twisted Lore 11.1.0 (2011-11-15) +================================ + +Bugfixes +-------- + - When run from an unpacked source tarball or a VCS checkout, + bin/lore/lore will now use the version of Twisted it is part of. + (#3526) + +Deprecations and Removals +------------------------- + - Removed compareMarkPos and comparePosition from lore.tree, + deprecated in Twisted 9.0. (#5127) + + +Twisted Mail 11.1.0 (2011-11-15) +================================ + +Features +-------- + - twisted.mail.smtp.LOGINCredentials now generates challenges with + ":" instead of "\0" for interoperability with Microsoft Outlook. + (#4692) + +Bugfixes +-------- + - When run from an unpacked source tarball or a VCS checkout, + bin/mail/mailmail will now use the version of Twisted it is part + of. (#3526) + +Other +----- + - #4796, #5006 + + +Twisted Names 11.1.0 (2011-11-15) +================================= + +Features +-------- + - twisted.names.dns.Message now parses records of unknown type into + instances of a new `UnknownType` class. (#4603) + +Bugfixes +-------- + - twisted.names.dns.Name now detects loops in names it is decoding + and raises an exception. Previously it would follow the loop + forever, allowing a remote denial of service attack against any + twisted.names client or server. (#5064) + - twisted.names.hosts.Resolver now supports IPv6 addresses; its + lookupAddress method now filters them out and its lookupIPV6Address + method is now implemented. (#5098) + + +Twisted News 11.1.0 (2011-11-15) +================================ + +No significant changes have been made for this release. + + +Twisted Pair 11.1.0 (2011-11-15) +================================ + +No significant changes have been made for this release. + + +Twisted Runner 11.1.0 (2011-11-15) +================================== + +No significant changes have been made for this release. + + +Twisted Web 11.1.0 (2011-11-15) +=============================== + +Features +-------- + - twisted.web.client.ProxyAgent is a new HTTP/1.1 web client which + adds proxy support. (#1774) + - twisted.web.client.Agent now takes optional connectTimeout and + bindAddress arguments which are forwarded to the subsequent + connectTCP/connectSSL call. (#3450) + - The new class twisted.web.client.FileBodyProducer makes it easy to + upload data in HTTP requests made using the Agent client APIs. + (#4017) + - twisted.web.xmlrpc.XMLRPC now allows its lookupProcedure method to + be overridden to change how XML-RPC procedures are dispatched. + (#4836) + - A new HTTP cookie-aware Twisted Web Agent wrapper is included in + twisted.web.client.CookieAgent (#4922) + - New class twisted.web.template.TagLoader provides an + ITemplateLoader implementation which loads already-created + twisted.web.iweb.IRenderable providers. (#5040) + - The new class twisted.web.client.RedirectAgent adds redirect + support to the HTTP 1.1 client stack. (#5157) + - twisted.web.template now supports HTML tags from the HTML5 + standard, including and