[ZPT] ANN: PageTemplates 1.4.0, TAL 1.4.0, ZTUtils 1.1.0
Evan Simpson
evan@zope.com
Mon, 13 Aug 2001 15:04:35 -0400
The newest ZPT is up. It only includes two of the proposals from the
straw poll, but the others may take some time, so here we go:
Page Template changes
Features Added
- ZPTs are now cache-enabled
- Added property sheet to ZPT
Bugs Fixed
- Expressions with embedded newlines were broken
- History comparison tried to expand macros
- Iterator exceptions weren't converted
- 'Unauthorized' exception couldn't be handled by on-error
TAL changes
Features Added
- Added TAL statement: omit_tag="[<boolean expr>]" replaces
the statement tag with its contents if the boolean
expression is true or omitted.
- The TAL and METAL namespaces can be applied to tag names,
tags in these namespaces are removed from rendered output
(leaving the contents in place, as with omit_tag)
whenever attributes in these namespaces would be, and
tag attributes without explicit namespaces default to the
tag's namespace (per XML spec).
ZTUtils changes
Features Added
- TreeMakers have a setChildAccess() method that you can use
to control tree construction. Child nodes can be accessed
through either an attribute name or callback function.
Children fetched by attribute name can be filtered through a
callback function.
- A new LazyFilter class allows you to filter a sequence using
Zope security and an optional filter callback function. The
security and filter tests are lazy, meaning they are
performed as late as possible.
The optional 'skip' argument determines the reaction when
access to a sequence element is refused by the Zope security
policy. The default (None) is to raise the 'Unauthorized'
exception. If a string is passed, such elements are
skipped. If the string is non-empty, it is treated as a
permission name, and the element is skipped if the user
doesn't have that permission on the element.
- The Zope versions of TreeMaker, SimpleTreeMaker, and Batch
now use LazyFilter. The TreeMakers have a setSkip() method
that can be used to set the 'skip' value. Batch has an
optional 'skip_unauthorized' argument that is passed to
LazyFilter as 'skip'.
- Utility functions make_query(), url_query(), and
make_hidden_input() have been added.
Cheers,
Evan @ Zope