Mercurial > genshi > mirror
annotate ChangeLog @ 372:1a0c19b02025 stable-0.3.x 0.3.5
Ported [451] to 0.3.x.
author | cmlenz |
---|---|
date | Wed, 22 Nov 2006 21:17:33 +0000 |
parents | 2e0ca25af903 |
children | ccf00b09972c |
rev | line source |
---|---|
372 | 1 Version 0.3.5 |
2 http://svn.edgewall.org/repos/genshi/tags/0.3.4/ | |
3 (Nov 22 2006, from branches/stable/0.3.x) | |
4 | |
5 * Fix XPath traversal in match templates. Previously, `div/p` would be treated | |
6 the same as `div//p`, i.e. it would match all descendants and not just the | |
7 immediate children. | |
8 * Preserve whitespace in HTML `<pre>` elements also when they contain child | |
9 elements. | |
10 * Match templates no longer match their own output (ticket #77). | |
11 * Blank lines before directives in text templates are now preserved as | |
12 expected (ticket #62). | |
13 | |
14 | |
318 | 15 Version 0.3.4 |
16 http://svn.edgewall.org/repos/genshi/tags/0.3.4/ | |
324 | 17 (Nov 2 2006, from branches/stable/0.3.x) |
318 | 18 |
19 * The encoding of HTML and XML files, as well as markup and text templates, | |
20 can now be specified. Also, the encoding specified in XML declarations is | |
21 now respected unless an expiclit encoding is requested. | |
22 * Expressions used as arguments for `py:with`, `py:def`, and `py:for` | |
23 directives can now contain non-ASCII strings. | |
24 | |
25 | |
289 | 26 Version 0.3.3 |
27 http://svn.edgewall.org/repos/genshi/tags/0.3.3/ | |
303 | 28 (Oct 16 2006, from branches/stable/0.3.x) |
289 | 29 |
30 * Fixed bug introduced in 0.3.2 that broke the parsing of templates which | |
31 declare the same namespace more than once in a nested fashion. | |
295 | 32 * Fixed the parsing of HTML entity references inside attribute values, both |
33 in the `XMLParser` and the `HTMLParser` classes. | |
303 | 34 * Some changes to usage of absolute vs. relative template paths to ensure that |
35 the filenamed-keyed cache employed by the TemplateLoader doesn't mix up | |
36 templates with the same name, but from different subdirectories. | |
289 | 37 |
38 | |
286 | 39 Version 0.3.2 |
40 http://svn.edgewall.org/repos/genshi/tags/0.3.2/ | |
41 (Oct 12 2006, from branches/stable/0.3.x) | |
42 | |
43 * Exceptions from templates now contain the absolute path to the template file | |
44 when a search path is used. This enables tracebacks to display the line in | |
45 question. | |
46 * The template engine plugin now provides three different types: "genshi" and | |
47 "genshi-markup" map to markup templates, while "genshi-text" maps to text | |
48 templates. | |
49 * Fixed the namespace context used by XPath patterns in py:match templates. | |
50 The were erroneously using the namespace context of the elements being | |
51 matched, where they should rather use the context in which they were | |
52 defined. | |
53 * The contents of `<script>` and `<style>` elements are no longer escaped when | |
54 serializing to HTML but declaring the XHTML namespace in the template. | |
55 * Improved error message raised when using the `py:for` directive on an object | |
56 that is not iterable (ticket #60). | |
57 * Fixed the XPath function `starts-with()` which was always returning true | |
58 (ticket #61). | |
59 | |
60 | |
261 | 61 Version 0.3.1 |
62 http://svn.edgewall.org/repos/genshi/tags/0.3.1/ | |
263 | 63 (Sep 22 2006, from branches/stable/0.3.x) |
261 | 64 |
65 * Includes and user-defined filters were not getting the correct context data | |
66 when used inside a match template (ticket #56). | |
67 * XPath patterns using the union operator (`|`) were returning only partial | |
68 results in some cases. | |
69 | |
70 | |
192
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
71 Version 0.3 |
230 | 72 http://svn.edgewall.org/repos/genshi/tags/0.3.0/ |
253 | 73 (Sep 17 2006, from branches/stable/0.3.x) |
192
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
74 |
234 | 75 * The project name was changed from "Markup" to "Genshi". See UPGRADE.txt |
76 for upgrade instructions. | |
192
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
77 * Expression evaluation now differentiates between undefined variables and |
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
78 variables that are defined but set to `None`. This also means that local |
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
79 variables can override built-ins even if the local variable are set to |
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
80 `None` (ticket #36). |
199
71ce4b5335ba
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
81 * The plugin implementation now makes more functions available for use inside |
71ce4b5335ba
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
82 templates: XML(), HTML(), defined(), and value-of(). These are mostly for |
71ce4b5335ba
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
83 migration from Kid. |
192
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
84 * The parsing of `py:with` directives has been improved: you can now assign |
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
85 to multiple names, and semicolons inside string literals are treated as |
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
86 expected. |
199
71ce4b5335ba
* Removed storage of substream in `MatchDirective`, because it's already being stored in the match templates (related to #39).
cmlenz
parents:
192
diff
changeset
|
87 * Generator expressions can now be used in template expressions (ticket #16). |
200
5861f4446c26
Add serialization to plain text, based on cboos' patch. Closes #41.
cmlenz
parents:
199
diff
changeset
|
88 * Added serialization to plain text (ticket #41). |
218 | 89 * Calling functions from template expressions with *args and/or **kwargs |
90 now works correctly (ticket #42). | |
91 * The `TemplateLoader` class and the `Template` instances that it manages are | |
92 now thread-safe, as they no longer keep any state related to the current | |
93 processing context. | |
94 * Stream filters and serializers can now be applied using the "pipe" (bitwise | |
95 or) operator "|". | |
96 * The execution of named template functions (`py:def`) no longer silently | |
97 swallows TypeError exceptions (ticket #44). | |
98 * The XML Parser now correctly handles unicode input (ticket #43). | |
99 * HTML entities can now be used in templates without having to declare an HTML | |
100 document type. | |
101 * Error reporting on undefined entities has been fixed. | |
102 * Fix traversal of substreams by XPath expressions. For example, the path | |
103 '*/*' no longer matches non-immediate child elements, and '@*' no longer | |
104 matches the attributes of descendants. | |
105 * Fixes for `py:match` which would get confused when it should be applied | |
106 to multiple elements (ticket #49). | |
224
90d62225f411
Implement support for namespace prefixes in XPath expressions.
cmlenz
parents:
218
diff
changeset
|
107 * Using namespace prefixes in XPath expressions is now supported. |
227
96a7e5011c69
Use list comprehension instead of `map()` in the AST transformer.
cmlenz
parents:
224
diff
changeset
|
108 * Expressions now correctly handle slices (ticket #51). |
234 | 109 * A simple text-based template language is now included for generating |
110 plain text output (ticket #47). | |
192
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
111 |
b64e36bc1100
Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents:
185
diff
changeset
|
112 |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
113 Version 0.2 |
230 | 114 http://svn.edgewall.org/repos/genshi/tags/0.2.0/ |
184
181d292eafa2
Interpolate multiline expressions in templates. Thanks to Christian Boos for reporting the problem and providing the fix.
cmlenz
parents:
181
diff
changeset
|
115 (Aug 22 2006, from branches/stable/0.2.x) |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
116 |
153 | 117 * XPath syntax errors now contain position info (ticket #20). |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
118 * Errors in expression evaluation now contain the correct line number in the |
153 | 119 template (ticket #22). |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
120 * <script> and <style> element contents are no longer escaped when using HTML |
153 | 121 serialization (ticket #24). |
122 * In some cases expressions in templates did not get interpolated (ticket | |
123 #26). | |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
124 * CDATA sections are now passed through the pipeline and serialized correctly. |
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
125 That allows using <script> or <style> elements in XHTML output that is still |
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
126 compatible with HTML user agents. |
159 | 127 * The XHTML serializer now correctly handles elements in foreign namespaces |
128 (such as SVG or MathML). | |
153 | 129 * Fixed relative includes in templates on Windows (ticket #27). |
160 | 130 * Output can be encoded using legacy codecs such as ISO-8859-1. Any character |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
131 not representable in the chosen encoding gets replaced by the corresponding |
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
132 XML character reference. |
156 | 133 * String literals in XPath expressions that contain spaces are now parsed |
134 as expected. | |
135 * Added support for the XPath functions boolean(), ceiling(), concat(), | |
162
456039594db9
Implement the XPath relational operators and the `round()` function.
cmlenz
parents:
160
diff
changeset
|
136 contains(), false(), floor(), normalize-space(), number(), round(), |
456039594db9
Implement the XPath relational operators and the `round()` function.
cmlenz
parents:
160
diff
changeset
|
137 starts-with(), string-length(), substring(), substring-after(), |
456039594db9
Implement the XPath relational operators and the `round()` function.
cmlenz
parents:
160
diff
changeset
|
138 substring-before(), translate(), and true(). |
168 | 139 * Non-ASCII characters in expressions should now be handled correctly (ticket |
140 #29). | |
141 * Default values for arguments of template functions now also work with | |
142 constants and complex expressions (they only worked for string or number | |
143 literals before). | |
181
e103b75a96ce
Some error message improvements for template directives. Thanks to Christian Boos for the patch!
cmlenz
parents:
169
diff
changeset
|
144 * XPath expressions in now support XPath variables ($var) in predicates |
e103b75a96ce
Some error message improvements for template directives. Thanks to Christian Boos for the patch!
cmlenz
parents:
169
diff
changeset
|
145 (ticket #31). |
184
181d292eafa2
Interpolate multiline expressions in templates. Thanks to Christian Boos for reporting the problem and providing the fix.
cmlenz
parents:
181
diff
changeset
|
146 * Expressions in templates can now span multiple lines if they are enclosed |
181d292eafa2
Interpolate multiline expressions in templates. Thanks to Christian Boos for reporting the problem and providing the fix.
cmlenz
parents:
181
diff
changeset
|
147 in curly braces. |
185
95c3813a00de
Fix for #34: `py:def` macros can now be invoked from within expressions in attribute values.
cmlenz
parents:
184
diff
changeset
|
148 * py:def macros can now be invoked from within expressions inside attribute |
95c3813a00de
Fix for #34: `py:def` macros can now be invoked from within expressions in attribute values.
cmlenz
parents:
184
diff
changeset
|
149 values (ticket #34). |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
150 |
169 | 151 |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
152 Version 0.1 |
230 | 153 http://svn.edgewall.org/repos/genshi/tags/0.1.0/ |
148
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
154 (Aug 3 2006, from branches/stable/0.1.x) |
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
155 |
dcc9dc25bc59
Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff
changeset
|
156 * First public release |