I guess I'll keep the crossposting, since this may be of interest to those who do not read the twisted-web list. On Sep 20, 2004, at 11:46 AM, Cory Dodt wrote:
Urgh. I usually avoid getting involved in these discussions--not because I don't want to participate but because the ML style does not work very well with my brain. There's all these different parts of this proposal and some are being rejected by some people and modified by other people and it's very hard for me to figure out what the whole picture is.
In this case, I have to say something because this is pretty important to the product I'm developing. I just spent 6 weeks doing a conversion to Nevow because Woven isn't being supported any more. I do *not* want to do the same thing with Web. I've made modifications to Twisted trunk that I was hoping to get out of 2.0 for our official release, but if there's not going to be a web1 any more, that puts this project in jeopardy again because it means I may not be able to use 2.0.
I do not want that to happen. Note foremost what web2 is. 1) A rewrite of the Request/low level HTTP layer. 2) *Migrating* the Nevow resource model back into the core webserver where it belongs. Where there are conflicting statements by others, I'd go with what I say since so far I seem to be in charge of web2. ;) In quick summary: since you've already migrated to Nevow, I expect to be able to provide easy compatibility with your app so you can use new releases of Nevow that depend on web2 with little work. If you currently have web1 resources working with Nevow, they will also work with Nevow/web2.
So here's what I have to say: please *summarize*. I need to get a sense of:
1) Timeline.. when are changes being implemented, in what order, tied to what release etc.
Web2 will be done when it is done, hopefully by the time Twisted 2.0 releases, but if not, then not. In parallel with development of web2, a branch of the Nevow repository will be developed that uses t.web2. That should be released at the same time. Web1 will stay around for the indefinite future. SVN trunk of Nevow will remain dependent only upon web1 until such a time as web2&nevow-which-uses-it work sufficiently well at which point that branch will merge with the trunk.
2) How is the svn repo going to change?
Right now? t.web2 gets added to Twisted. Nevow gets a branch.
3) What is going to be put into what release by whom?
I don't know what you're asking.
4) What's the impact if you're currently using web1 and you want to be using web2 because 1 isn't supported any more?
The migration from web1 to web2 will be about the same difficulty as the migration from web1 to Nevow. However, you are currently not using (most of) web1, so that is the wrong question to ask. You are using Nevow's appserver, which is basically the same as what web2's appserver will be. Web2 will be mostly compatible with current Nevow. I say mostly only because it may not be feasible to provide absolutely complete compatibility, but I'd like to provide compatibility for all the things that normal apps use (Nevow Resource API and app-facing parts of the Request object). Web2 will be somewhat compatible with web1 Resources. "Somewhat" here means basically the same thing it already means with Nevow (since the code will be essentially the same code). If you're using the Nevow "appserver" now, ideally you will not have to change your app for it to work with web2, although you may want to change some things to avoid deprecation warnings. Not everything always turns out ideally, so I can't promise that, but it is the goal.
5) What's the impact if you stay with web1?
You cannot use new releases of Nevow after <whenever web2 is done and the Nevow branch is merged>. Web1 will continue to have the same amount of maintenance as it does now (namely: almost none) James