[Twisted-Python] ANN: Twisted 1.1.0, the framework of *your* internet
Hegedus, Matthew S
matthew.s.hegedus at lmco.com
Tue Oct 28 10:41:38 EST 2003
Forgive me, I'm a little confused. I've had some trouble trying to implement
a seemingly simple web server using Woven, so the mention of this "nevow"
peaked my curiosity. On www.divmod.org I check out Quotient and it appears
to be nothing but an email app.
Here's what I've got and what I'm trying to accomplish:
I've already created a twisted server app and client app. The client can
connect to the server, pass client
info to the server for management, query the server for all of the info
that it is managing, and the client can
manipulate this info(modify some attributes, delete info).
Now I want to create a web interface to this server, so that anybody can
access the server's info through a
browser. I want the users to have the same capabilities that the twisted
client app provides. For GUI I want
text input fields, tables, buttons inside and outside of tables, and maybe
a chunk of browser space devoted to
With Woven I can create tables and buttons just fine, but input handling
is baffling me, and I'm suspicious of
may or may not be related to my input
Is Twisted and/or Woven and/or Nevow a good technology for tackling this
sort of problem? Or is should I be looking at other technologies (JAVA
applets, JSP, servlets, CGI, ASP)? I'm lacking direction for the moment and
my confidence in Twisted is shaky(or is it just my understanding of
Twisted?). I welcome and appreciate any thoughts from this Twisted
From: Donovan Preston [mailto:dp at twistedmatrix.com]
Sent: Monday, October 27, 2003 4:56 PM
To: twisted-python at twistedmatrix.com
Subject: Re: [Twisted-Python] ANN: Twisted 1.1.0, the framework of *your*
On Oct 27, 2003, at 5:23 PM, darryl wrote:
>>> The question is, does anyone want to focus on learing woven with NEW
>>> woven in the works?
Woven is certainly very usable in it's current state -- if you want to
do simple-to-moderate things quickly, it can be very useful. However,
it's complexity made it difficult to do some of the more ambitious
things we are trying to do, such as semi-transparent form handling, and
serverToClient events. But there are a few people who have built (and
deployed) fairly complex woven applications. The fact that nevow exists
doesn't detract from that.
nevow was originally a research project -- a weekend's worth of hacking
whose benefits turned out to be so great that we decided to focus on
bringing it up to a usable state for Quotient as soon as possible. And
that's where it is now.
Most of the woven concepts -- template and code abstraction using a
DOM, reusable partial page renderers (Widgets in old woven, renderer
callables in nevow), all of the concepts needed to know to use
twisted.web -- carry over to nevow. The only thing that's really
changed in nevow is a few names, and the code is VASTLY simplified,
well tested, and thus far easier to understand, design semantics for,
>> An unfortunate last-minute change of direction, but worth it
>> how vastly improved the new code is.
>> It's no longer a part of Twisted, however. Check out Quotient CVS -
> May i ask why it's not part of twisted?
> And if that's the case will Woven be maintained?
nevow will be moved into twisted after a period of
stabilization/development in Quotient. Since twisted is a large project
with many external developers using it, and quotient is a smaller
project that is mostly a small core team of development, we felt it
made sense to keep it out of twisted proper until the development had
stabilized. Since nevow has the benefit of being a complete rewrite of
all the *best* parts of woven, and none of the bad, stabilization has
been remarkably quick. So expect to see nevow in twisted fairly soon.
In the meantime, woven will continue to be maintained with bugfixes,
and nevow is fully usable outside of quotient -- even to the point of
being fully usable without twisted.web (as a cgi, or in zope or
webware, for example). I should also mention that there will probably
be a compatibility layer for nevow to render old-style Woven classes
sometime in the future. It is amazingly simple to add rendering
functionality to it since it uses components to render the dom (which
is really just a list of any python objects)
If you are doing any new development, I highly encourage you to take a
look at nevow, if for no other reason than you can have a hand in
shaping it's development. I would very much appreciate feedback about
it, especially now, since the code is very, very short and readable.
Twisted-Python mailing list
Twisted-Python at twistedmatrix.com
More information about the Twisted-Python