[Subversion] / PEAK / CHANGES.txt  

Diff of /PEAK/CHANGES.txt

Parent Directory | Revision Log

version 1803, Thu Sep 23 21:07:44 2004 UTC version 1832, Fri Oct 8 00:24:25 2004 UTC
Line 1 
Line 1 
 Fixes and Enhancements since Version 0.5 alpha 3  Fixes and Enhancements since Version 0.5 alpha 3
   
    - The 'peak.util.WSGIServer' module has been moved to the
      'wsgiref.simple_server' module.  The 'wsgiref' reference library for WSGI
      (aka PEP 333) is now distributed with PEAK.
   
    - Added a 'WSGI' command to the 'peak' script, to allow you to run "foreign"
      (i.e. non-PEAK) PEP 333 applications in PEAK's various servers and
      launchers.  Basically, by prefixing 'WSGI' before the import specifier, you
      can now run such foreign apps.
   
      For example::
   
          peak launch WSGI import:some_app.application
   
      will run 'some_app.application' in the local web browser, and::
   
          peak CGI WSGI import:some_app.application
   
      will run it under the CGI/FastCGI runner.  Similarly, you can use this in
      the "Command" spec for the "peak supervise" pre-forking FastCGI supervisor
      subsystem.
   
    - There is a new 'running.IWSGIApplication' interface, for PEP 333-compliant
      "application" objects, and all of PEAK's provided applications now implement
      it instead of 'running.IRerunnableCGI'.  If you write your apps to the newer
      interface, they'll be portable to any PEP 333-compliant web server, not just
      the PEAK CGI, FastCGI, and "supervisor" containers.  There is a simple
      adapter that allows 'IWSGIApplication' objects to run in the CGI-based
      containers, but not the other way around, so using 'IRerunnableCGI' directly
      now limits your portability.  (For example, the "peak launch" and "peak
      serve" commands will soon require 'IWSGIApplication', and will not support
      'IRerunnableCGI' any more.)
   
      Of course, if you use the 'peak.web' framework, you don't need to worry
      about any of this; your apps will automatically be wrapped as
      'IWSGIApplication', and run in any PEAK server or gateway.
   
    - Most 'peak.web' interfaces have changed significantly.  If you implemented
      anything based on the older interfaces, and it still works, it's sheer
      bloody luck.  In particular, note that every method in 'web.IWebTraversable'
      now has different inputs and/or outputs than before.  Please read the new
      interface docs and update your code!  The changed interfaces offer much
      more flexibility and functionality than before, but they will require you to
      update your code.
   
    - 'web.ContainerAsTraversable' has been removed.  It was redundant, since the
      new default traversal mechanism used by 'Traversable' and 'Decorator' now
      handles getitem, getattr, and views.
   
    - Added Zope 3-like "namespaces" to 'peak.web'.  Path segments in a URL
      may be prefixed with '"++some_id++"' in order to invoke a corresponding
      namespace handler registered under '"peak.web.namespaces.some_id"'.
      Namespace handlers must implement 'web.INamespaceHandler', and they are
      supplied with the original path segment as well as the separated namespace
      and name.  Also, as in Zope 3, '"@@foo"' is a shortcut for '"++view++foo"'.
      Builtin namespaces at this time include 'view', 'item', 'attr', 'skin', and
      'resources'.  'skin' treats the rest of its path segment as a skin name,
      and sets the current skin, while 'resources' begins traversal to resources
      found in the current skin.  The other namespaces are as described at:
   
      "Resources and traversal in peak.web":http://www.eby-sarna.com/pipermail/peak/2004-August/001712.html
   
  - Fixed several 'peak.events' bugs, as reported by Vladimir Iliev, Yaroslav   - Fixed several 'peak.events' bugs, as reported by Vladimir Iliev, Yaroslav
    Samchuk, and Alexander Smishlajev:     Samchuk, and Alexander Smishlajev:
   
Line 157 
Line 218 
   
  - Added a 'zconfig.schema' factory, so that 'ref:zconfig.schema@streamURL'   - Added a 'zconfig.schema' factory, so that 'ref:zconfig.schema@streamURL'
    will load a schema loader.  Schema loaders are themselves object factories,     will load a schema loader.  Schema loaders are themselves object factories,
    so you can do something like:     so you can do something like::
   
      [Named Services]       [Named Services]
      peak.naming.factories.myschema = \       peak.naming.factories.myschema = \
          naming.LinkRef('ref:zconfig.schema@pkgfile:mypkg/Schema.xml')           naming.LinkRef('ref:zconfig.schema@pkgfile:mypkg/Schema.xml')
   
    in order to make URLs like 'ref:myschema@filename' work.  Note, by the way,     in order to make URLs like 'ref:myschema@filename' work.  Note, by the way,
    that the above could also read:     that the above could also read::
   
      [Named Services]       [Named Services]
      peak.naming.factories.myschema = \       peak.naming.factories.myschema = \


Generate output suitable for use with a patch program
Legend:
Removed from v.1803  
changed lines
  Added in v.1832

cvs-admin@eby-sarna.com

Powered by ViewCVS 1.0-dev

ViewCVS and CVS Help