[Twisted-Python] Fwd: [Twisted-commits] r11721 - revert r11685

Glyph Lefkowitz glyph at divmod.com
Mon Sep 20 10:49:40 EDT 2004


On Mon, 2004-09-20 at 10:07, Donovan Preston wrote:
> On Sep 20, 2004, at 12:40 AM, Glyph Lefkowitz wrote:
> 
> > Let's try to figure out which web server we are supporting and then
> > actually support it, rather than having 9 different half-assed,
> > half-supported implementations floating around.
> 
> Well, certainly nobody who wrote the original twisted.web code is 
> supporting it, but that doesn't mean it's unusable. On the contrary, 
> it's very usable, and there are probably lots and lots of applications 
> which depend on all sorts of subtle and broken semantics it uses 
> (people being far more interested in developing web related things than 
> finger related things).

The twisted 1.3 release will available for download for the forseeable
future, for those who need it.  I don't believe we should release stuff
with subtle, broken semantics in twisted 2.0 - the release number
implies that we are changing a few things, so this would be a good
opportunity to abandon support for the old code.

> I don't see any sane way to perform a complete 
> rewrite with better semantics while still living in the old twisted.web 
> namespace, especially given the miniscule amount of time most of the 
> major developers of this project have to put against it. Developing 
> backwards compatibility with the old APIs would be a death march, would 
> never quite work anyway, and wouldn't really benefit anyone in 
> particular.

If there is to be no backwards compatibility, why bother with the
separate namespace?  Do we want to do this with other modules in the
future, e.g. twisted.spread2?  Our last discussion of this was
inconclusive because I don't think we foresaw the web rewrite being so
radically different.  I guess we have to drag that dead horse out here
to beat it one more time ;).

Even if the namespace changes, there should only be one of these in svn
at a time.  If further development on twisted web 1 is going to continue
it should be in a maintenance branch, and then we need to discuss how
we're going to manage maintenance releases.

> We already figured out which web server we ("we" being those developers 
> who actually care about the web) are going to be supporting. 
> twisted.web2. web should have a deprecation warning in __init__ for a 
> release, and then should be terminated with extreme prejudice.

I would terminate before providing a deprecation warning.  If you want
to provide a backwards-compatibility release for using web1 with the new
reactor core, that's fine, but I don't see any reason to include web1
with the new download.

> As far as the nevow dependency, [...] you're not going to get much out of the box.

It really sounds like nevow and web2 ought to be merged.  Traffic on the
twisted-web list suggests that anyone who is using one is using the
other, at least in some capacity.  The marketing aspect of this
certainly requires some discussion, but it seems that one's utility is
greatly reduced without the other, and the dependency is circular.  For
specialized cases, such as using nevow for CGI scripts, there is no
problem with having the other code around as long as it can avoid being
imported.





More information about the Twisted-Python mailing list