Changes between Version 3 and Version 4 of TwistedWebPlan


Ignore:
Timestamp:
02/06/10 18:34:17 (12 years ago)
Author:
Thijs Triemstra
Comment:

add link to nevow

Legend:

Unmodified
Added
Removed
Modified
  • TwistedWebPlan

    v3 v4  
    99== The (Current) Solution ==
    1010
    11 We are phasing out the twisted.web2 ''namespace'' in favor of twisted.web.  There is a half-decent webserver in that namespace, but there is also a lot of garbage.  If this doesn't make sense to you, and you thought that twisted.web2 was the future, consider [source:trunk/twisted/web2/proxy.py@17455#L1 the twisted.web2.proxy] module.  There are others which are slightly less obviously bad, but the quality of twisted.web2 is so dramatically inconsistent that we feel it would be better to evolve a working, stable, but somewhat outdated collection of functionality (twisted.web) into better shape than try to take a pile of functionality that is in some ways better but in some ways completely broken (twisted.web2) and make it all work.
     11We are phasing out the {{{twisted.web2}}} ''namespace'' in favor of {{{twisted.web}}}.  There is a half-decent webserver in that namespace, but there is also a lot of garbage.  If this doesn't make sense to you, and you thought that {{{twisted.web2}}} was the future, consider [source:trunk/twisted/web2/proxy.py@17455#L1 the twisted.web2.proxy] module.  There are others which are slightly less obviously bad, but the quality of {{{twisted.web2}}} is so dramatically inconsistent that we feel it would be better to evolve a working, stable, but somewhat outdated collection of functionality (twisted.web) into better shape than try to take a pile of functionality that is in some ways better but in some ways completely broken ({{{twisted.web2}}}) and make it all work.
    1212
    13 We are also trying to migrate all of the nevow application-server functionality back into twisted.web, so that nevow is just templating.  We may, as a second, later phase, also move the templating stuff, but the main goal right now is to separate those two pieces of functionality completely, and stop maintaining a redundant one in Nevow.
     13We are also trying to migrate all of the [http://divmod.org/trac/wiki/DivmodNevow Nevow] application-server functionality back into twisted.web, so that Nevow is just templating.  We may, as a second, later phase, also move the templating stuff, but the main goal right now is to separate those two pieces of functionality completely, and stop maintaining a redundant one in Nevow.
    1414
    15 Nominally, twisted.web2 was never finished, never officially released in any capacity, and never supposed to be stable.  So our compatibility policy may be slightly more lax there than on twisted.web.  However, some compatibility will be maintained, and for most users the upgrade path will be gentle as you can gradually start importing more things from twisted.web instead.
     15Nominally, {{{twisted.web2}}} was never finished, never officially released in any capacity, and never supposed to be stable.  So our compatibility policy may be slightly more lax there than on twisted.web.  However, some compatibility will be maintained, and for most users the upgrade path will be gentle as you can gradually start importing more things from {{{twisted.web}}} instead.
    1616
    1717== The Goal Of The Solution ==
     
    2323  * We don't have to do the same work three times.
    2424
    25 If you are considering contributing some patches in web-land, please contribute them to twisted.web.  Ideally, you would contribute patches which use code from web2 to eliminate redundancy between web2 and web.
     25If you are considering contributing some patches in web-land, please contribute them to {{{twisted.web}}}.  Ideally, you would contribute patches which use code from web2 to eliminate redundancy between web2 and web.
    2626
    2727== What This Means to You ==
    2828
    29 There will be some deprecation warnings in twisted.web for the really old stuff that we know isn't good any more.
     29There will be some deprecation warnings in {{{twisted.web}}} for the really old stuff that we know isn't good any more.
    3030
    31 Eventually you may have to make some gradual changes to your code to use newer versions of twisted.web.  Eventually your Nevow applications will tell you that you don't need to use nevow.appserver or nevow's `IResource` any more, and you can use the versions from twisted.web.
     31Eventually you may have to make some gradual changes to your code to use newer versions of twisted.web.  Eventually your Nevow applications will tell you that you don't need to use nevow.appserver or nevow's `IResource` any more, and you can use the versions from {{{twisted.web}}}.
    3232
    33 However, at some point in the future, there will be ''one supported, good web server in the Twisted community'', and that will be twisted.web.  In the meanwhile, twisted.web2 will still be around and will still have a reasonable HTTP/1.1 implementation if you need that right now.  At no point during this transition do we intend to make a major earthquake.  You do not need to worry that your code will suddenly all be broken, but you will need to change some imports to eliminate some warnings every so often.
     33However, at some point in the future, there will be ''one supported, good web server in the Twisted community'', and that will be `twisted.web`.  In the meanwhile, `twisted.web2` will still be around and will still have a reasonable HTTP/1.1 implementation if you need that right now.  At no point during this transition do we intend to make a major earthquake.  You do not need to worry that your code will suddenly all be broken, but you will need to change some imports to eliminate some warnings every so often.
    3434
    3535== Specific Planned Twisted Web Enhancements ==