Using Twisted.web - should I wait?
As mentioned in a previous thread, I'm looking at using twisted.web in a project. However, all the talk at the moment of a twsited.web rewrite and the splitting up of twisted into seperate projects makes me think I should hold off for a bit. Basically the question is, should I bother starting the project now if in a few days/weeks/months time the whole framework is going to change and I end up having to refactor half of the project to fit in? I'm using twisted a fair bit in another project I'm working on (multi-group chat system, like live-person) but am hesitant on starting a new one based around .web/nevow etc.. Any advice? Thanks. -- R.Livsey Incutio Web Developer www.livsey.org www.incutio.com
I have just started development of two web sites using twisted.web, after looking into all of the python-based alternatives. It's been very disappointing to see all of this talk about a split, and even more disappointing to see all of the goofiness about naming. I haven't encountered any other projects where things were as obtuse and hard to understand, and it's almost tempting to think that the twisted developers get a kick out of creating some sort of a secret code that only they can understand. Please accept this as constructive criticism, which it is fully intended to be. Perhaps the viewpoint of a twisted newbie/outsider who is in a profession where words are important might be valuable. I don't find the seemingly random naming conventions "cute" or amusing at all. They are confusing and convey no intrinsic information whatsoever. I don't want to have to study source code to find out what the heck a "banana encoded jelly stream" is supposed to do. (That is contrary to the XP principle of descriptive naming, by the way.) And I certainly don't want to have to review each one of a list of packages to find out what they really do, information that some goofy name like "lowdown" or "charlotte" simply does not convey. Best regards, Ed -- Ed Suominen Registered Patent Agent Open Source Developer (Yes, both...) Web Site: http://www.eepatents.com Richard Livsey wrote:
As mentioned in a previous thread, I'm looking at using twisted.web in a project.
However, all the talk at the moment of a twsited.web rewrite and the splitting up of twisted into seperate projects makes me think I should hold off for a bit.
Basically the question is, should I bother starting the project now if in a few days/weeks/months time the whole framework is going to change and I end up having to refactor half of the project to fit in?
I'm using twisted a fair bit in another project I'm working on (multi-group chat system, like live-person) but am hesitant on starting a new one based around .web/nevow etc..
Any advice?
Thanks.
I'm going to back up Richard and Ed, because I feel like people might be inclined to just pass their emails by. This is very important. Here we have two users who are expressing serious reservations about using Twisted or Nevow because they don't have any details on how we plan to split twisted.web. I can understand their concern: nobody likes being in the dark. I know there's already a long thread where ideas were bounced around, but I think -- for the sake of keeping interested parties interested (nod to Richard and Ed) -- it would be helpful if someone who is directly involved in the split answers a few things right here: 1) What will happen to twisted.web? It's a complex module, and doing reverse-imports (the way LowDown is doing with twisted.news) might get pretty rocky. Do we have any guarantees that, for the foreseeable future, the existing twisted.web will not change, and people can continue to develop applications using twisted.web? 2) When everything's finished, how drastically different will the APIs be? Are we talking about a simple "move code over, clean up a few loose ends," or is this going to be a massive reorganization and refactoring of everything web-related? And, most importantly... 3) What sort of timeframe are we looking at? Really, I think everyone is most interested in the last question. How long will the split take? If it's going to happen gradually over several months, what should people who are considering using twisted.web or Nevow do? If it's going to happen in the next two weeks... well, then, it's about time someone stood up and said so! I'm saying we need more public information about a split, because it's starting to affect the user community. I think the best thing to do would be a page on the Wiki, answering exactly these questions, where everyone can go to get the latest scoop on what's planned (and what's still undecided). Wiki: <http://divmod.org/users/wiki.twistd/nevow/moin.cgi> So, please, someone who's directly involved with the split, we need to hear more about plans, soon. -- Alex Levy WWW: http://mesozoic.geecs.org/ "Never let your sense of morals prevent you from doing what is right." -- Salvor Hardin, Isaac Asimov's _Foundation_
Alex Levy wrote:
I'm going to back up Richard and Ed, because I feel like people might be inclined to just pass their emails by. This is very important.
Here we have two users who are expressing serious reservations about using Twisted or Nevow because they don't have any details on how we plan to split twisted.web. I can understand their concern: nobody likes being in the dark.
One point I'd like to make is that Nevow has, since its inception, been pretty API-unstable. *twisted.web* has been stable for a while, and there's no reason not to use it. Nevow is obviously still something you need to watch closely if you want to use. I promise there will be backwards compatibility for twisted.web. I'll explain more below...
1) What will happen to twisted.web? It's a complex module, and doing reverse-imports (the way LowDown is doing with twisted.news) might get pretty rocky. Do we have any guarantees that, for the foreseeable future, the existing twisted.web will not change, and people can continue to develop applications using twisted.web?
'from twisted import web' *will remain backwards compatible*. I'll personally see to that. :-)
2) When everything's finished, how drastically different will the APIs be? Are we talking about a simple "move code over, clean up a few loose ends," or is this going to be a massive reorganization and refactoring of everything web-related?
That's a question that foom and nevow-twisted.web-forkers can answer. nevow changed a bunch of core twisted.web stuff, and foom is rewriting the HTTP support.
And, most importantly...
3) What sort of timeframe are we looking at?
Ha! I mock your assumptions that someone actually has any idea. ;-)
Really, I think everyone is most interested in the last question. How long will the split take? If it's going to happen gradually over several months, what should people who are considering using twisted.web or Nevow do? If it's going to happen in the next two weeks... well, then, it's about time someone stood up and said so!
twisted.web split is going to be tricky, since people are rewriting it at the same time. It will probably be a short while before the split actually occurs, and we're probably going to have to put a bunch of BC code in twisted/web/. But like I said, people shouldn't worry about using *twisted.web*. It will remain backwards compatible. I can't say anything about the backwards compatibility of all the slightly different APIs in nevow; that's not my concern.
-- Twisted | Christopher Armstrong: International Man of Twistery Radix | Release Manager, Twisted Project ---------+ http://radix.twistedmatrix.com/
My personal ideas: 1) Don't touch twisted.web, just leave it there, it's a perfectly fine useable webserver, don't add deprecation warnings until the new twisted.web is considered stable. 2) Backport some of the nicer parts of the Nevow API (locateChild and child_XXX methods as opposed to getChild, getDefaultChild, getChildWithDefault, etc.) Wether or not the old api will still be there I haven't really thought about, I'm really not as concerned with backwards compatibility as others are, but if it's the consensus of the people working on the split that backwards compatibility is in issue it'll be maintained. Atleast for a few versions The way I see it is the backporting is part of the stabilizing the current Nevow API. 3) I don't know when all this will be happening, I'm working on backports as we speak but nothing has been done to formalize the effort, no repositories set up no web pages, etc ... I'm not even sure how I came to be the guy-who-is-doing-this I'm not a twisted developer, I'm not a Nevow developer, I'm just a very frustrated programmer who tried to generate discussion, and somehow started actually working on it. On Tue, 2004-04-20 at 11:12, Christopher Armstrong wrote:
Alex Levy wrote:
I'm going to back up Richard and Ed, because I feel like people might be inclined to just pass their emails by. This is very important.
Here we have two users who are expressing serious reservations about using Twisted or Nevow because they don't have any details on how we plan to split twisted.web. I can understand their concern: nobody likes being in the dark.
One point I'd like to make is that Nevow has, since its inception, been pretty API-unstable. *twisted.web* has been stable for a while, and there's no reason not to use it. Nevow is obviously still something you need to watch closely if you want to use.
I promise there will be backwards compatibility for twisted.web. I'll explain more below...
1) What will happen to twisted.web? It's a complex module, and doing reverse-imports (the way LowDown is doing with twisted.news) might get pretty rocky. Do we have any guarantees that, for the foreseeable future, the existing twisted.web will not change, and people can continue to develop applications using twisted.web?
'from twisted import web' *will remain backwards compatible*. I'll personally see to that. :-)
2) When everything's finished, how drastically different will the APIs be? Are we talking about a simple "move code over, clean up a few loose ends," or is this going to be a massive reorganization and refactoring of everything web-related?
That's a question that foom and nevow-twisted.web-forkers can answer. nevow changed a bunch of core twisted.web stuff, and foom is rewriting the HTTP support.
And, most importantly...
3) What sort of timeframe are we looking at?
Ha! I mock your assumptions that someone actually has any idea. ;-)
Really, I think everyone is most interested in the last question. How long will the split take? If it's going to happen gradually over several months, what should people who are considering using twisted.web or Nevow do? If it's going to happen in the next two weeks... well, then, it's about time someone stood up and said so!
twisted.web split is going to be tricky, since people are rewriting it at the same time. It will probably be a short while before the split actually occurs, and we're probably going to have to put a bunch of BC code in twisted/web/.
But like I said, people shouldn't worry about using *twisted.web*. It will remain backwards compatible. I can't say anything about the backwards compatibility of all the slightly different APIs in nevow; that's not my concern.
On Tue, Apr 20, 2004 at 02:52:26PM -0700, David Reid wrote:
I'm not even sure how I came to be the guy-who-is-doing-this I'm not a twisted developer, I'm not a Nevow developer, I'm just a very frustrated programmer who tried to generate discussion, and somehow started actually working on it.
Welcome to open source. Regards, Stephen Thorne.
Before locateChild is made "the way", it has a problem that there is no way to terminate the recursion without consuming all elements of the path. This means it is impossible to write CGI scripts that make use of PATH_INFO. I have a patch on the nevow tracker related to this issue: http://www.divmod.org/users/roundup.twistd/nevow/issue44 afaik, it hasn't yet been adressed, but I've not been following development since I submitted it. My apologies if I'm lagging in information.
there I haven't really thought about, I'm really not as concerned with backwards compatibility as others are, but if it's the consensus of the people working on the split that backwards compatibility is in issue it'll be maintained. Atleast for a few versions
The way I see it is the backporting is part of the stabilizing the current Nevow API.
3) I don't know when all this will be happening, I'm working on backports as we speak but nothing has been done to formalize the effort, no repositories set up no web pages, etc ...
I'm not even sure how I came to be the guy-who-is-doing-this I'm not a twisted developer, I'm not a Nevow developer, I'm just a very frustrated programmer who tried to generate discussion, and somehow started actually working on it.
On Tue, 2004-04-20 at 11:12, Christopher Armstrong wrote:
Alex Levy wrote:
I'm going to back up Richard and Ed, because I feel like people might be inclined to just pass their emails by. This is very important.
Here we have two users who are expressing serious reservations about using Twisted or Nevow because they don't have any details on how we plan to split twisted.web. I can understand their concern: nobody likes being in the dark.
One point I'd like to make is that Nevow has, since its inception, been pretty API-unstable. *twisted.web* has been stable for a while, and there's no reason not to use it. Nevow is obviously still something you need to watch closely if you want to use.
I promise there will be backwards compatibility for twisted.web. I'll explain more below...
1) What will happen to twisted.web? It's a complex module, and doing reverse-imports (the way LowDown is doing with twisted.news) might get pretty rocky. Do we have any guarantees that, for the foreseeable future, the existing twisted.web will not change, and people can continue to develop applications using twisted.web?
'from twisted import web' *will remain backwards compatible*. I'll personally see to that. :-)
2) When everything's finished, how drastically different will the APIs be? Are we talking about a simple "move code over, clean up a few loose ends," or is this going to be a massive reorganization and refactoring of everything web-related?
That's a question that foom and nevow-twisted.web-forkers can answer. nevow changed a bunch of core twisted.web stuff, and foom is rewriting the HTTP support.
And, most importantly...
3) What sort of timeframe are we looking at?
Ha! I mock your assumptions that someone actually has any idea. ;-)
Really, I think everyone is most interested in the last question. How long will the split take? If it's going to happen gradually over several months, what should people who are considering using twisted.web or Nevow do? If it's going to happen in the next two weeks... well, then, it's about time someone stood up and said so!
twisted.web split is going to be tricky, since people are rewriting it at the same time. It will probably be a short while before the split actually occurs, and we're probably going to have to put a bunch of BC code in twisted/web/.
But like I said, people shouldn't worry about using *twisted.web*. It will remain backwards compatible. I can't say anything about the backwards compatibility of all the slightly different APIs in nevow; that's not my concern.
_______________________________________________ Twisted-web mailing list Twisted-web@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
On Tue, Apr 20, 2004 at 02:52:26PM -0700, David Reid wrote:
... 2) Backport some of the nicer parts of the Nevow API (locateChild and child_XXX methods as opposed to getChild, getDefaultChild, getChildWithDefault, etc.) Wether or not the old api will still be ...
participants (7)
-
Alex Levy
-
Christopher Armstrong
-
David Reid
-
Ed Suominen
-
Phil Frost
-
Richard Livsey
-
Stephen Thorne