Mercurial > genshi > genshi-test
annotate ChangeLog @ 462:c107f6f4c558
Add lower-level serialization functions.
author | cmlenz |
---|---|
date | Thu, 26 Apr 2007 09:14:30 +0000 |
parents | 6b5544bb5a99 |
children | dafc6f4c20fb |
rev | line source |
---|---|
456
fe1c1b0391a9
Fix incorrect reference to translation function in the I18N filter.
cmlenz
parents:
452
diff
changeset
|
1 Version 0.4.1 |
fe1c1b0391a9
Fix incorrect reference to translation function in the I18N filter.
cmlenz
parents:
452
diff
changeset
|
2 http://svn.edgewall.org/repos/genshi/tags/0.4.1/ |
fe1c1b0391a9
Fix incorrect reference to translation function in the I18N filter.
cmlenz
parents:
452
diff
changeset
|
3 (?, from branches/stable/0.4.x) |
fe1c1b0391a9
Fix incorrect reference to translation function in the I18N filter.
cmlenz
parents:
452
diff
changeset
|
4 |
fe1c1b0391a9
Fix incorrect reference to translation function in the I18N filter.
cmlenz
parents:
452
diff
changeset
|
5 * Fix incorrect reference to translation function in the I18N filter. |
458
160f787cc818
The `ET()` function now correctly handles attributes with a namespace.
cmlenz
parents:
456
diff
changeset
|
6 * The `ET()` function now correctly handles attributes with a namespace. |
460
6b5544bb5a99
Apply patch by Alec Thomas for processing XML declarations (#111). Thanks!
cmlenz
parents:
458
diff
changeset
|
7 * XML declarations are now processed internally, as well as written to the |
6b5544bb5a99
Apply patch by Alec Thomas for processing XML declarations (#111). Thanks!
cmlenz
parents:
458
diff
changeset
|
8 output when XML serialization is used (ticket #111). |
462 | 9 * Added the functions `encode()` and `get_serializer()` to the `genshi.output` |
10 module, which provide a lower-level API to the functionality previously only | |
11 available through `Stream.render()` and `Stream.serialize()`. | |
456
fe1c1b0391a9
Fix incorrect reference to translation function in the I18N filter.
cmlenz
parents:
452
diff
changeset
|
12 |
fe1c1b0391a9
Fix incorrect reference to translation function in the I18N filter.
cmlenz
parents:
452
diff
changeset
|
13 |
276 | 14 Version 0.4 |
15 http://svn.edgewall.org/repos/genshi/tags/0.4.0/ | |
452 | 16 (Apr 16 2007, from branches/stable/0.4.x) |
276 | 17 |
18 * New example applications for CherryPy and web.py. | |
19 * The template loader now uses a LRU cache to limit the number of cached | |
20 templates to a configurable maximum. Also, a race condition in the template | |
21 loader was fixed by adding locking. | |
22 * A new filter (genshi.filters.HTMLFormFiller) was added, which can populate | |
23 HTML forms based on a dictionary of values. | |
277
c9fd81953169
The `HTMLSanitizer` now lets you override the default set of tag and attribute names that are considered safe.
cmlenz
parents:
276
diff
changeset
|
24 * The set of permitted tag and attribute names for the HTMLSanitizer can now |
c9fd81953169
The `HTMLSanitizer` now lets you override the default set of tag and attribute names that are considered safe.
cmlenz
parents:
276
diff
changeset
|
25 be configured per instance. |
294 | 26 * The template engine plugin now supports a range of options for |
27 configuration, for example to set the default serialization method, the | |
28 default output encoding, or the default DOCTYPE. | |
302 | 29 * The ElementTree adaptation function `ET()` has moved into the `genshi.input` |
30 module. | |
31 * Allow `when` directives to omit the test expression as long as the | |
32 associated choose directive does have one. In that case, the when branch is | |
33 followed if the expression of the choose directive evaluates to a truth | |
34 value. | |
317
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
35 * Unsuccessful attribute or item lookups now return `Undefined` objects for |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
36 nicer error messages. |
336
5f2c7782cd8a
Refactoring: `genshi.template` is now a package, it was getting way to crowded in that file.
cmlenz
parents:
333
diff
changeset
|
37 * Split up the `genshi.template` module into multiple modules inside the new |
5f2c7782cd8a
Refactoring: `genshi.template` is now a package, it was getting way to crowded in that file.
cmlenz
parents:
333
diff
changeset
|
38 `genshi.template` package. |
343
4ff2338e89cd
Remove automatic calling of expression evaluation results if they are callable. See [http://groups.google.com/group/genshi/browse_thread/thread/f515986760918d41 this mailing list thread].
cmlenz
parents:
336
diff
changeset
|
39 * Results of expression evaluation are no longer implicitly called if they |
4ff2338e89cd
Remove automatic calling of expression evaluation results if they are callable. See [http://groups.google.com/group/genshi/browse_thread/thread/f515986760918d41 this mailing list thread].
cmlenz
parents:
336
diff
changeset
|
40 are callable. |
345 | 41 * Instances of the `genshi.core.Attrs` class are now immutable (they are |
42 subclasses of `tuple` instead of `list`). | |
374
ca46dc9c7761
`MarkupTemplate`s can now be instantiated from markup streams, in addition to strings and file-like objects. Thanks to David Fraser for the patch. Closes #69.
cmlenz
parents:
371
diff
changeset
|
43 * `MarkupTemplate`s can now be instantiated from markup streams, in addition |
ca46dc9c7761
`MarkupTemplate`s can now be instantiated from markup streams, in addition to strings and file-like objects. Thanks to David Fraser for the patch. Closes #69.
cmlenz
parents:
371
diff
changeset
|
44 to strings and file-like objects (ticket #69). |
378
fff4a81ffc56
Improve handling of incorrectly nested tags in the HTML parser.
cmlenz
parents:
374
diff
changeset
|
45 * Improve handling of incorrectly nested tags in the HTML parser. |
399
4a7358313ee8
Rework parsing of expressions in template text, to be able to:
cmlenz
parents:
387
diff
changeset
|
46 * Template includes can now be nested inside fallback content. |
4a7358313ee8
Rework parsing of expressions in template text, to be able to:
cmlenz
parents:
387
diff
changeset
|
47 * Expressions can now contain dict literals (ticket #37). |
4a7358313ee8
Rework parsing of expressions in template text, to be able to:
cmlenz
parents:
387
diff
changeset
|
48 * It is now possible to have one or more escaped dollar signs in front of a |
4a7358313ee8
Rework parsing of expressions in template text, to be able to:
cmlenz
parents:
387
diff
changeset
|
49 full expression (ticket #92). |
401
9582328f82e5
Make the `Markup` class available by default in template expressions. Closes #67.
cmlenz
parents:
399
diff
changeset
|
50 * The `Markup` class is now available by default in template expressions |
9582328f82e5
Make the `Markup` class available by default in template expressions. Closes #67.
cmlenz
parents:
399
diff
changeset
|
51 (ticket #67). |
411 | 52 * The handling of namespace declarations in XML/XHTML output has been improved. |
53 * The `Attrs` class no longer automatically wraps all attribute names in | |
54 `QName` objects. This is now the responsibility of whoever is instantiating | |
55 `Attrs` objects (for example, stream filters and generators). | |
56 * Python code blocks are now supported using the `<?python ?>` processing | |
57 instruction (ticket #84). | |
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.
cmlenz
parents:
437
diff
changeset
|
58 * The way errors in template expressions are handled can now be configured. The |
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.
cmlenz
parents:
437
diff
changeset
|
59 option `LenientLookup` provides the same forgiving mode used in previous |
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.
cmlenz
parents:
437
diff
changeset
|
60 Genshi versions, while `StrictLookup` raises exceptions when undefined |
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.
cmlenz
parents:
437
diff
changeset
|
61 variables or members are accessed. The lenient mode is still the default in |
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.
cmlenz
parents:
437
diff
changeset
|
62 this version, but that may change in the future. (ticket #88) |
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.
cmlenz
parents:
437
diff
changeset
|
63 * If a variable is not necessarily defined at the top level of the template |
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.
cmlenz
parents:
437
diff
changeset
|
64 data, the new built-in functions `defined(key)` and `value_of(key, default)` |
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.
cmlenz
parents:
437
diff
changeset
|
65 can be used so that the template also works in strict lookup mode. These |
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.
cmlenz
parents:
437
diff
changeset
|
66 functions were previously only available when using Genshi via the template |
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.
cmlenz
parents:
437
diff
changeset
|
67 engine plugin (for compatibility with Kid). |
432 | 68 * `style` attributes are no longer allowed by the `HTMLSanitizer` by default. |
446
90f5908cd10a
Add basic I18n/L10n functionality, based on GenshiRecipes/Localization.
cmlenz
parents:
442
diff
changeset
|
69 If they are explicitly added to the set of safe attributes, any unicode |
90f5908cd10a
Add basic I18n/L10n functionality, based on GenshiRecipes/Localization.
cmlenz
parents:
442
diff
changeset
|
70 escapes in the attribute value are now handled properly. |
437 | 71 * Namespace declarations on conditional elements (for example using a `py:if` |
72 directive`) are no longer moved to the following element when the element | |
73 originally carrying the declaration is removed from the stream (ticket #107). | |
446
90f5908cd10a
Add basic I18n/L10n functionality, based on GenshiRecipes/Localization.
cmlenz
parents:
442
diff
changeset
|
74 * Added basic built-in support for internationalizing templates by providing |
90f5908cd10a
Add basic I18n/L10n functionality, based on GenshiRecipes/Localization.
cmlenz
parents:
442
diff
changeset
|
75 a new `Translator` class that can both extract localizable strings from a |
90f5908cd10a
Add basic I18n/L10n functionality, based on GenshiRecipes/Localization.
cmlenz
parents:
442
diff
changeset
|
76 stream, and replace those strings with their localizations at render time. |
90f5908cd10a
Add basic I18n/L10n functionality, based on GenshiRecipes/Localization.
cmlenz
parents:
442
diff
changeset
|
77 The code for this was largely taken from previous work done by Matt Good |
90f5908cd10a
Add basic I18n/L10n functionality, based on GenshiRecipes/Localization.
cmlenz
parents:
442
diff
changeset
|
78 and David Fraser. |
365
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
79 |
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
80 |
387 | 81 Version 0.3.6 |
82 http://svn.edgewall.org/repos/genshi/tags/0.3.6/ | |
83 (Dec 11 2006, from branches/stable/0.3.x) | |
84 | |
85 * The builder API now accepts streams as children of elements and fragments. | |
86 | |
87 | |
365
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
88 Version 0.3.5 |
387 | 89 http://svn.edgewall.org/repos/genshi/tags/0.3.5/ |
365
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
90 (Nov 22 2006, from branches/stable/0.3.x) |
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
91 |
371 | 92 * Fix XPath traversal in match templates. Previously, `div/p` would be treated |
93 the same as `div//p`, i.e. it would match all descendants and not just the | |
94 immediate children. | |
365
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
95 * Preserve whitespace in HTML `<pre>` elements also when they contain child |
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
96 elements. |
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
97 * Match templates no longer match their own output (ticket #77). |
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
98 * Blank lines before directives in text templates are now preserved as |
85d910b8f9e5
Fix for #62: preserve whitespace in front of directives.
cmlenz
parents:
346
diff
changeset
|
99 expected (ticket #62). |
346
2304e080ec07
Whitespace was not getting preserved in HTML `<pre>` elements that contained other HTML elements.
cmlenz
parents:
345
diff
changeset
|
100 |
317
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
101 |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
102 Version 0.3.4 |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
103 http://svn.edgewall.org/repos/genshi/tags/0.3.4/ |
323 | 104 (Nov 2 2006, from branches/stable/0.3.x) |
317
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
105 |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
106 * The encoding of HTML and XML files, as well as markup and text templates, |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
107 can now be specified. Also, the encoding specified in XML declarations is |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
108 now respected unless an expiclit encoding is requested. |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
109 * Expressions used as arguments for `py:with`, `py:def`, and `py:for` |
8ba12f886c8a
Update change log, and some minor tweaks to keyword argument ordering for the new `encoding` parameter.
cmlenz
parents:
302
diff
changeset
|
110 directives can now contain non-ASCII strings. |
285 | 111 |
112 | |
288
dcd0e8918098
Fix bug introduced in [343], that broke the parsing of templates which declare the same namespace more than once in a nested fashion. Thanks to Graham Higgins for reporting the problem.
cmlenz
parents:
285
diff
changeset
|
113 Version 0.3.3 |
dcd0e8918098
Fix bug introduced in [343], that broke the parsing of templates which declare the same namespace more than once in a nested fashion. Thanks to Graham Higgins for reporting the problem.
cmlenz
parents:
285
diff
changeset
|
114 http://svn.edgewall.org/repos/genshi/tags/0.3.3/ |
302 | 115 (Oct 16 2006, from branches/stable/0.3.x) |
288
dcd0e8918098
Fix bug introduced in [343], that broke the parsing of templates which declare the same namespace more than once in a nested fashion. Thanks to Graham Higgins for reporting the problem.
cmlenz
parents:
285
diff
changeset
|
116 |
dcd0e8918098
Fix bug introduced in [343], that broke the parsing of templates which declare the same namespace more than once in a nested fashion. Thanks to Graham Higgins for reporting the problem.
cmlenz
parents:
285
diff
changeset
|
117 * Fixed bug introduced in 0.3.2 that broke the parsing of templates which |
dcd0e8918098
Fix bug introduced in [343], that broke the parsing of templates which declare the same namespace more than once in a nested fashion. Thanks to Graham Higgins for reporting the problem.
cmlenz
parents:
285
diff
changeset
|
118 declare the same namespace more than once in a nested fashion. |
294 | 119 * Fixed the parsing of HTML entity references inside attribute values, both |
120 in the `XMLParser` and the `HTMLParser` classes. | |
302 | 121 * Some changes to usage of absolute vs. relative template paths to ensure that |
122 the filenamed-keyed cache employed by the TemplateLoader doesn't mix up | |
123 templates with the same name, but from different subdirectories. | |
288
dcd0e8918098
Fix bug introduced in [343], that broke the parsing of templates which declare the same namespace more than once in a nested fashion. Thanks to Graham Higgins for reporting the problem.
cmlenz
parents:
285
diff
changeset
|
124 |
dcd0e8918098
Fix bug introduced in [343], that broke the parsing of templates which declare the same namespace more than once in a nested fashion. Thanks to Graham Higgins for reporting the problem.
cmlenz
parents:
285
diff
changeset
|
125 |
285 | 126 Version 0.3.2 |
127 http://svn.edgewall.org/repos/genshi/tags/0.3.2/ | |
128 (Oct 12 2006, from branches/stable/0.3.x) | |
129 | |
130 * Exceptions from templates now contain the absolute path to the template file | |
131 when a search path is used. This enables tracebacks to display the line in | |
132 question. | |
133 * The template engine plugin now provides three different types: "genshi" and | |
134 "genshi-markup" map to markup templates, while "genshi-text" maps to text | |
135 templates. | |
278
8de2620504b9
Fix the handling of namespace context for match templates.
cmlenz
parents:
277
diff
changeset
|
136 * Fixed the namespace context used by XPath patterns in py:match templates. |
8de2620504b9
Fix the handling of namespace context for match templates.
cmlenz
parents:
277
diff
changeset
|
137 The were erroneously using the namespace context of the elements being |
8de2620504b9
Fix the handling of namespace context for match templates.
cmlenz
parents:
277
diff
changeset
|
138 matched, where they should rather use the context in which they were |
8de2620504b9
Fix the handling of namespace context for match templates.
cmlenz
parents:
277
diff
changeset
|
139 defined. |
285 | 140 * The contents of `<script>` and `<style>` elements are no longer escaped when |
280
e68705cb462e
The content of `<script>` and `<style>` elements is no longer escaped when serializing to HTML but declaring the XHTML namespace in the template.
cmlenz
parents:
278
diff
changeset
|
141 serializing to HTML but declaring the XHTML namespace in the template. |
285 | 142 * Improved error message raised when using the `py:for` directive on an object |
143 that is not iterable (ticket #60). | |
144 * Fixed the XPath function `starts-with()` which was always returning true | |
145 (ticket #61). | |
276 | 146 |
147 | |
260 | 148 Version 0.3.1 |
149 http://svn.edgewall.org/repos/genshi/tags/0.3.1/ | |
262 | 150 (Sep 22 2006, from branches/stable/0.3.x) |
260 | 151 |
152 * Includes and user-defined filters were not getting the correct context data | |
153 when used inside a match template (ticket #56). | |
154 * XPath patterns using the union operator (`|`) were returning only partial | |
155 results in some cases. | |
156 | |
157 | |
192
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
158 Version 0.3 |
230 | 159 http://svn.edgewall.org/repos/genshi/tags/0.3.0/ |
252 | 160 (Sep 17 2006, from branches/stable/0.3.x) |
192
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
161 |
234 | 162 * The project name was changed from "Markup" to "Genshi". See UPGRADE.txt |
163 for upgrade instructions. | |
192
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
164 * Expression evaluation now differentiates between undefined variables and |
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
165 variables that are defined but set to `None`. This also means that local |
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
166 variables can override built-ins even if the local variable are set to |
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
167 `None` (ticket #36). |
199
58284b6b0009
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
168 * The plugin implementation now makes more functions available for use inside |
58284b6b0009
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
169 templates: XML(), HTML(), defined(), and value-of(). These are mostly for |
58284b6b0009
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
170 migration from Kid. |
192
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
171 * The parsing of `py:with` directives has been improved: you can now assign |
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
172 to multiple names, and semicolons inside string literals are treated as |
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
173 expected. |
199
58284b6b0009
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
174 * Generator expressions can now be used in template expressions (ticket #16). |
200
50eab0469148
Add serialization to plain text, based on cboos' patch. Closes #41.
cmlenz
parents:
199
diff
changeset
|
175 * Added serialization to plain text (ticket #41). |
218 | 176 * Calling functions from template expressions with *args and/or **kwargs |
177 now works correctly (ticket #42). | |
178 * The `TemplateLoader` class and the `Template` instances that it manages are | |
179 now thread-safe, as they no longer keep any state related to the current | |
180 processing context. | |
181 * Stream filters and serializers can now be applied using the "pipe" (bitwise | |
182 or) operator "|". | |
183 * The execution of named template functions (`py:def`) no longer silently | |
184 swallows TypeError exceptions (ticket #44). | |
185 * The XML Parser now correctly handles unicode input (ticket #43). | |
186 * HTML entities can now be used in templates without having to declare an HTML | |
187 document type. | |
188 * Error reporting on undefined entities has been fixed. | |
189 * Fix traversal of substreams by XPath expressions. For example, the path | |
190 '*/*' no longer matches non-immediate child elements, and '@*' no longer | |
191 matches the attributes of descendants. | |
192 * Fixes for `py:match` which would get confused when it should be applied | |
193 to multiple elements (ticket #49). | |
224
e4dad1145f84
Implement support for namespace prefixes in XPath expressions.
cmlenz
parents:
218
diff
changeset
|
194 * Using namespace prefixes in XPath expressions is now supported. |
227
98b8e1a92df8
Use list comprehension instead of `map()` in the AST transformer.
cmlenz
parents:
224
diff
changeset
|
195 * Expressions now correctly handle slices (ticket #51). |
234 | 196 * A simple text-based template language is now included for generating |
197 plain text output (ticket #47). | |
192
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
198 |
cda3bdfc19ed
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
199 |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
200 Version 0.2 |
230 | 201 http://svn.edgewall.org/repos/genshi/tags/0.2.0/ |
184
e27a48802987
Interpolate multiline expressions in templates. Thanks to Christian Boos for reporting the problem and providing the fix.
cmlenz
parents:
181
diff
changeset
|
202 (Aug 22 2006, from branches/stable/0.2.x) |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
203 |
153 | 204 * XPath syntax errors now contain position info (ticket #20). |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
205 * Errors in expression evaluation now contain the correct line number in the |
153 | 206 template (ticket #22). |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
207 * <script> and <style> element contents are no longer escaped when using HTML |
153 | 208 serialization (ticket #24). |
209 * In some cases expressions in templates did not get interpolated (ticket | |
210 #26). | |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
211 * CDATA sections are now passed through the pipeline and serialized correctly. |
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
212 That allows using <script> or <style> elements in XHTML output that is still |
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
213 compatible with HTML user agents. |
159 | 214 * The XHTML serializer now correctly handles elements in foreign namespaces |
215 (such as SVG or MathML). | |
153 | 216 * Fixed relative includes in templates on Windows (ticket #27). |
160 | 217 * Output can be encoded using legacy codecs such as ISO-8859-1. Any character |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
218 not representable in the chosen encoding gets replaced by the corresponding |
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
219 XML character reference. |
156 | 220 * String literals in XPath expressions that contain spaces are now parsed |
221 as expected. | |
222 * Added support for the XPath functions boolean(), ceiling(), concat(), | |
162
f767cf98e3e3
Implement the XPath relational operators and the `round()` function.
cmlenz
parents:
160
diff
changeset
|
223 contains(), false(), floor(), normalize-space(), number(), round(), |
f767cf98e3e3
Implement the XPath relational operators and the `round()` function.
cmlenz
parents:
160
diff
changeset
|
224 starts-with(), string-length(), substring(), substring-after(), |
f767cf98e3e3
Implement the XPath relational operators and the `round()` function.
cmlenz
parents:
160
diff
changeset
|
225 substring-before(), translate(), and true(). |
168 | 226 * Non-ASCII characters in expressions should now be handled correctly (ticket |
227 #29). | |
228 * Default values for arguments of template functions now also work with | |
229 constants and complex expressions (they only worked for string or number | |
230 literals before). | |
181
d07ce6c1dbbe
Some error message improvements for template directives. Thanks to Christian Boos for the patch!
cmlenz
parents:
169
diff
changeset
|
231 * XPath expressions in now support XPath variables ($var) in predicates |
d07ce6c1dbbe
Some error message improvements for template directives. Thanks to Christian Boos for the patch!
cmlenz
parents:
169
diff
changeset
|
232 (ticket #31). |
184
e27a48802987
Interpolate multiline expressions in templates. Thanks to Christian Boos for reporting the problem and providing the fix.
cmlenz
parents:
181
diff
changeset
|
233 * Expressions in templates can now span multiple lines if they are enclosed |
e27a48802987
Interpolate multiline expressions in templates. Thanks to Christian Boos for reporting the problem and providing the fix.
cmlenz
parents:
181
diff
changeset
|
234 in curly braces. |
185
8e5a3048b359
Fix for #34: `py:def` macros can now be invoked from within expressions in attribute values.
cmlenz
parents:
184
diff
changeset
|
235 * py:def macros can now be invoked from within expressions inside attribute |
8e5a3048b359
Fix for #34: `py:def` macros can now be invoked from within expressions in attribute values.
cmlenz
parents:
184
diff
changeset
|
236 values (ticket #34). |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
237 |
169 | 238 |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
239 Version 0.1 |
230 | 240 http://svn.edgewall.org/repos/genshi/tags/0.1.0/ |
148
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
241 (Aug 3 2006, from branches/stable/0.1.x) |
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
242 |
a0a52cf4e4de
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
243 * First public release |