E&S CVS Commit: PEAK - Many peak.web enhancements and fixes:

pje at eby-sarna.com pje at eby-sarna.com
Wed Jul 30 17:55:00 EDT 2003


Module Name:	PEAK
Committed By:	pje
Date:		Wed Jul 30 21:54:59 UTC 2003

Modified Files:
	PEAK/src/peak: peak.ini
	PEAK/src/peak/web: api.py interfaces.py places.py publish.py
	    templates.py
	PEAK/src/peak/web/tests: test_templates.py
Added Files:
	PEAK/src/peak/web: skins.py

Log Message:
Many peak.web enhancements and fixes:

Added 'resourcePrefix' property/attribute to manage coming
/++resources++ support

Added 'IWebTraversable.getAbsoluteURL()' method, w/default
implementations

Rename SimpleTraversable -> Traversable and ComponentAsTraversable ->
Decorator

Added ability for Decorator subclasses to overlay their own attributes
(e.g. web pages) onto their subjects

Added experimental 'MultiTraverser' that simultaneously traverses a
sequence of other traversables, returning another multi-traverser that
contains all the children of the wrapped traversables.

Added experimental 'Skin' class that serves as a traversal root, and in
future will support access to resources.  The NullSkinService now
actually instantiates a Skin, and Interaction uses its skin as a
traversal root.

Changed "default method" traversal to check whether the default method
actually exists, so as not to cause spurious "not found" errors in that
case.

Changed Interaction's page.render() handling so that if the subject
of a request doesn't support IWebPage, it's simply returned as-is.
This allows simple attribute values (e.g. strings, numbers,
dictionaries, etc.) to be rendered as strings.

Fixed 'List' DOMlet not informing list items of their parent traversable.


To view diffs of this commit, you can use the following URL(s):
http://cvs.eby-sarna.com/PEAK/src/peak/peak.ini.diff?r1=1.64&r2=1.65
http://cvs.eby-sarna.com/PEAK/src/peak/web/api.py.diff?r1=1.2&r2=1.3
http://cvs.eby-sarna.com/PEAK/src/peak/web/interfaces.py.diff?r1=1.11&r2=1.12
http://cvs.eby-sarna.com/PEAK/src/peak/web/places.py.diff?r1=1.8&r2=1.9
http://cvs.eby-sarna.com/PEAK/src/peak/web/publish.py.diff?r1=1.17&r2=1.18
http://cvs.eby-sarna.com/PEAK/src/peak/web/skins.py?rev=1.1&content-type=text/vnd.viewcvs-markup
http://cvs.eby-sarna.com/PEAK/src/peak/web/templates.py.diff?r1=1.7&r2=1.8
http://cvs.eby-sarna.com/PEAK/src/peak/web/tests/test_templates.py.diff?r1=1.3&r2=1.4

To generate a diff of this commit:
cvs rdiff -r1.64 -r1.65 PEAK/src/peak/peak.ini
cvs rdiff -r1.2 -r1.3 PEAK/src/peak/web/api.py
cvs rdiff -r1.11 -r1.12 PEAK/src/peak/web/interfaces.py
cvs rdiff -r1.8 -r1.9 PEAK/src/peak/web/places.py
cvs rdiff -r1.17 -r1.18 PEAK/src/peak/web/publish.py
cvs rdiff -r0 -r1.1 PEAK/src/peak/web/skins.py
cvs rdiff -r1.7 -r1.8 PEAK/src/peak/web/templates.py
cvs rdiff -r1.3 -r1.4 PEAK/src/peak/web/tests/test_templates.py

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




More information about the source-changes mailing list