[Buildbot-devel] Re: [Python-Dev] buildbot

Brian Warner warner-buildbot at lothar.com
Wed Jan 11 08:07:31 UTC 2006

> Interesting.  Where are these docs?  Last time I searched the  
> TwistedWeb docs, there was no mention of SSL whatsoever.

Hrm, I just did a search and you're right, SSL is *way* underdocumented.
Maybe I'm thinking about something posted to the twisted-dev mailing list.

There *is* the doc/core/examples/echoserv_ssl.py example, which shows how to
set up an SSL server with a pre-existing 'server.pem' certificate file.
Creating an SSL-enabled web server ought to be as simple as replacing the
existing 'TCPServer(portnum, factory)' with 'SSLServer(portnum, factory,
context_factory)' using the context_factory described in that example.

But yeah, the SSL documentation is disappointing. I'll see if I can bug the
right people about this.

> I see "Guard" now but did not realize what that meant when I was  
> looking for authentication.  Where is the "funny twisted name = thing  
> you're looking for" glossary?  :-)

My quickie travel-dictionary guide, off the top of my head:

 "Guard": web-specific authorization stuff: cookies, sessions
 "Cred": generic authorization stuff: users, credentials, checkers
         (I think Guard uses Cred as the back-end (as does Conch)
 "Conch": twisted's SSH implementation
 "Trial": twisted's unit-testing framework
 "Enterprise": database access libaries
 "Lore": documentation translator, XHTML to HTML/PS/PDF/Info/nroff
 "Spread"/"PB": remote objects, remote method invocation
 "Manhole": remotely-accessible interactive debugging prompt (REPL)
 "Pair": low-level packet manipulation, tcpdump-ish ("twisted pair", get it?)

and of course the slightly more obvious ones:

 "Web": the web server
 "Words": IRC server/client, other IM protocols
 "Names": DNS server/client
 "News": NNTP server/client
 "Mail": SMTP/POP/IMAP server/client

The cutesy names are a mixed blessing. On one hand, they make for unique
(usually googleable) identifiers, and improve the precision of discussions
among people who already know what they mean. On the other hand, they are
frustrating to translate. Pretty much the same as any technical jargon, I
suppose. Wasn't too long ago when "widget" was a generic term, after all.

I've got mixed feelings about the pun-derived names. I'm currently trying to
think of a good name for the new version of the remote-method-invocation code
in Twisted that I'm developing, the old one is called PB, short for
Perspective Broker, because the protocol mediates (i.e. "brokers") access to
Perspectives (objects which themselves mediate access to remote objects). The
new version is called newpb. There are a lot of pun-based names we could use
for the new one, but I'm trying to figure out how to use something obvious
like twisted.remote or twisted.distributed or something rather than be
clever. It's a hard temptation to resist :).


More information about the devel mailing list