Mercurial > genshi > genshi-test
diff ChangeLog @ 442:ff7c72b52fb2
Back out [510] and instead implement configurable error handling modes. The default is the old 0.3.x behaviour, but more strict error handling is available as an option.
author | cmlenz |
---|---|
date | Thu, 12 Apr 2007 22:40:49 +0000 |
parents | 3d82c5bdbf46 |
children | 90f5908cd10a |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -42,11 +42,16 @@ `Attrs` objects (for example, stream filters and generators). * Python code blocks are now supported using the `<?python ?>` processing instruction (ticket #84). - * Runtime error handling in template expressions has become more strict - (ticket #88). Where you previously could access undefined variables or - members, you now get an exception. If a variable is not necessarily defined - at the top level of the template data, the new built-in functions - `defined(name)` and `value_of(name, default)` need to be used. + * The way errors in template expressions are handled can now be configured. The + option `LenientLookup` provides the same forgiving mode used in previous + Genshi versions, while `StrictLookup` raises exceptions when undefined + variables or members are accessed. The lenient mode is still the default in + this version, but that may change in the future. (ticket #88) + * If a variable is not necessarily defined at the top level of the template + data, the new built-in functions `defined(key)` and `value_of(key, default)` + can be used so that the template also works in strict lookup mode. These + functions were previously only available when using Genshi via the template + engine plugin (for compatibility with Kid). * `style` attributes are no longer allowed by the `HTMLSanitizer` by default. If it is explicitly added to the set of safe attributes, and unicode escapes in the attribute value are handled correctly.