cmlenz@276: Version 0.4 cmlenz@276: http://svn.edgewall.org/repos/genshi/tags/0.4.0/ cmlenz@276: (?, from branches/stable/0.4.x) cmlenz@276: cmlenz@276: * New example applications for CherryPy and web.py. cmlenz@276: * The template loader now uses a LRU cache to limit the number of cached cmlenz@276: templates to a configurable maximum. Also, a race condition in the template cmlenz@276: loader was fixed by adding locking. cmlenz@276: * A new filter (genshi.filters.HTMLFormFiller) was added, which can populate cmlenz@276: HTML forms based on a dictionary of values. cmlenz@277: * The set of permitted tag and attribute names for the HTMLSanitizer can now cmlenz@277: be configured per instance. cmlenz@294: * The template engine plugin now supports a range of options for cmlenz@294: configuration, for example to set the default serialization method, the cmlenz@294: default output encoding, or the default DOCTYPE. cmlenz@302: * The ElementTree adaptation function `ET()` has moved into the `genshi.input` cmlenz@302: module. cmlenz@302: * Allow `when` directives to omit the test expression as long as the cmlenz@302: associated choose directive does have one. In that case, the when branch is cmlenz@302: followed if the expression of the choose directive evaluates to a truth cmlenz@302: value. cmlenz@317: * Unsuccessful attribute or item lookups now return `Undefined` objects for cmlenz@317: nicer error messages. cmlenz@333: * Fix XPath traversal in match templates. Previously, `div/p` would be treated cmlenz@333: the same as `div//p`, i.e. it would match all descendants and not just the cmlenz@333: immediate children. cmlenz@336: * Split up the `genshi.template` module into multiple modules inside the new cmlenz@336: `genshi.template` package. cmlenz@344: * Results of expression evaluation are no longer implicitly called if they cmlenz@344: are callable. cmlenz@347: * Instances of the `genshi.core.Attrs` class are now immutable (they are cmlenz@347: subclasses of `tuple` instead of `list`). cmlenz@347: * Preserve whitespace in HTML `
` elements also when they contained any
cmlenz@347:    child elements.
cmlenz@347: 
cmlenz@317: 
cmlenz@317: Version 0.3.4
cmlenz@317: http://svn.edgewall.org/repos/genshi/tags/0.3.4/
cmlenz@323: (Nov 2 2006, from branches/stable/0.3.x)
cmlenz@317: 
cmlenz@317:  * The encoding of HTML and XML files, as well as markup and text templates,
cmlenz@317:    can now be specified. Also, the encoding specified in XML declarations is
cmlenz@317:    now respected unless an expiclit encoding is requested.
cmlenz@317:  * Expressions used as arguments for `py:with`, `py:def`, and `py:for`
cmlenz@317:    directives can now contain non-ASCII strings.
cmlenz@285: 
cmlenz@285: 
cmlenz@288: Version 0.3.3
cmlenz@288: http://svn.edgewall.org/repos/genshi/tags/0.3.3/
cmlenz@302: (Oct 16 2006, from branches/stable/0.3.x)
cmlenz@288: 
cmlenz@288:  * Fixed bug introduced in 0.3.2 that broke the parsing of templates which
cmlenz@288:    declare the same namespace more than once in a nested fashion.
cmlenz@294:  * Fixed the parsing of HTML entity references inside attribute values, both
cmlenz@294:    in the `XMLParser` and the `HTMLParser` classes.
cmlenz@302:  * Some changes to usage of absolute vs. relative template paths to ensure that
cmlenz@302:    the filenamed-keyed cache employed by the TemplateLoader doesn't mix up
cmlenz@302:    templates with the same name, but from different subdirectories.
cmlenz@288: 
cmlenz@288: 
cmlenz@285: Version 0.3.2
cmlenz@285: http://svn.edgewall.org/repos/genshi/tags/0.3.2/
cmlenz@285: (Oct 12 2006, from branches/stable/0.3.x)
cmlenz@285: 
cmlenz@285:  * Exceptions from templates now contain the absolute path to the template file
cmlenz@285:    when a search path is used. This enables tracebacks to display the line in
cmlenz@285:    question.
cmlenz@285:  * The template engine plugin now provides three different types: "genshi" and
cmlenz@285:    "genshi-markup" map to markup templates, while "genshi-text" maps to text
cmlenz@285:    templates.
cmlenz@278:  * Fixed the namespace context used by XPath patterns in py:match templates.
cmlenz@278:    The were erroneously using the namespace context of the elements being
cmlenz@278:    matched, where they should rather use the context in which they were
cmlenz@278:    defined.
cmlenz@285:  * The contents of `