annotate ChangeLog @ 234:39c424b80edd trunk

* Minor simplification of XPath engine. * Updated change log.
author cmlenz
date Tue, 12 Sep 2006 14:08:36 +0000
parents 84168828b074
children 2a89132dd9d9
rev   line source
192
b64e36bc1100 Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents: 185
diff changeset
1 Version 0.3
230
84168828b074 Renamed Markup to Genshi in repository.
cmlenz
parents: 227
diff changeset
2 http://svn.edgewall.org/repos/genshi/tags/0.3.0/
192
b64e36bc1100 Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents: 185
diff changeset
3 (?, from branches/stable/0.3.x)
b64e36bc1100 Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents: 185
diff changeset
4
234
39c424b80edd * Minor simplification of XPath engine.
cmlenz
parents: 230
diff changeset
5 * The project name was changed from "Markup" to "Genshi". See UPGRADE.txt
39c424b80edd * Minor simplification of XPath engine.
cmlenz
parents: 230
diff changeset
6 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
7 * 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
8 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
9 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
10 `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
11 * 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
12 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
13 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
14 * 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
15 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
16 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
17 * 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
18 * Added serialization to plain text (ticket #41).
218
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
19 * Calling functions from template expressions with *args and/or **kwargs
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
20 now works correctly (ticket #42).
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
21 * The `TemplateLoader` class and the `Template` instances that it manages are
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
22 now thread-safe, as they no longer keep any state related to the current
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
23 processing context.
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
24 * Stream filters and serializers can now be applied using the "pipe" (bitwise
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
25 or) operator "|".
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
26 * The execution of named template functions (`py:def`) no longer silently
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
27 swallows TypeError exceptions (ticket #44).
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
28 * The XML Parser now correctly handles unicode input (ticket #43).
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
29 * HTML entities can now be used in templates without having to declare an HTML
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
30 document type.
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
31 * Error reporting on undefined entities has been fixed.
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
32 * Fix traversal of substreams by XPath expressions. For example, the path
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
33 '*/*' no longer matches non-immediate child elements, and '@*' no longer
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
34 matches the attributes of descendants.
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
35 * Fixes for `py:match` which would get confused when it should be applied
6eff1d2b394a Updated change log.
cmlenz
parents: 200
diff changeset
36 to multiple elements (ticket #49).
224
90d62225f411 Implement support for namespace prefixes in XPath expressions.
cmlenz
parents: 218
diff changeset
37 * 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
38 * Expressions now correctly handle slices (ticket #51).
234
39c424b80edd * Minor simplification of XPath engine.
cmlenz
parents: 230
diff changeset
39 * A simple text-based template language is now included for generating
39c424b80edd * Minor simplification of XPath engine.
cmlenz
parents: 230
diff changeset
40 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
41
b64e36bc1100 Expression evaluation now differentiates between undefined variables and variables that are defined but set to `None`.
cmlenz
parents: 185
diff changeset
42
148
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
43 Version 0.2
230
84168828b074 Renamed Markup to Genshi in repository.
cmlenz
parents: 227
diff changeset
44 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
45 (Aug 22 2006, from branches/stable/0.2.x)
148
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
46
153
fc2ff46d1ae3 Fix relative includes on Windows. Closes #27.
cmlenz
parents: 148
diff changeset
47 * XPath syntax errors now contain position info (ticket #20).
148
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
48 * Errors in expression evaluation now contain the correct line number in the
153
fc2ff46d1ae3 Fix relative includes on Windows. Closes #27.
cmlenz
parents: 148
diff changeset
49 template (ticket #22).
148
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
50 * <script> and <style> element contents are no longer escaped when using HTML
153
fc2ff46d1ae3 Fix relative includes on Windows. Closes #27.
cmlenz
parents: 148
diff changeset
51 serialization (ticket #24).
fc2ff46d1ae3 Fix relative includes on Windows. Closes #27.
cmlenz
parents: 148
diff changeset
52 * In some cases expressions in templates did not get interpolated (ticket
fc2ff46d1ae3 Fix relative includes on Windows. Closes #27.
cmlenz
parents: 148
diff changeset
53 #26).
148
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
54 * 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
55 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
56 compatible with HTML user agents.
159
759c8f5e9efe Another changelog update
cmlenz
parents: 156
diff changeset
57 * The XHTML serializer now correctly handles elements in foreign namespaces
759c8f5e9efe Another changelog update
cmlenz
parents: 156
diff changeset
58 (such as SVG or MathML).
153
fc2ff46d1ae3 Fix relative includes on Windows. Closes #27.
cmlenz
parents: 148
diff changeset
59 * Fixed relative includes in templates on Windows (ticket #27).
160
d19e8a2c549e Attribute order in parsed XML is now preserved.
cmlenz
parents: 159
diff changeset
60 * 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
61 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
62 XML character reference.
156
4792730ebb20 Updated !ChangeLog to reflect [197].
cmlenz
parents: 153
diff changeset
63 * String literals in XPath expressions that contain spaces are now parsed
4792730ebb20 Updated !ChangeLog to reflect [197].
cmlenz
parents: 153
diff changeset
64 as expected.
4792730ebb20 Updated !ChangeLog to reflect [197].
cmlenz
parents: 153
diff changeset
65 * 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
66 contains(), false(), floor(), normalize-space(), number(), round(),
456039594db9 Implement the XPath relational operators and the `round()` function.
cmlenz
parents: 160
diff changeset
67 starts-with(), string-length(), substring(), substring-after(),
456039594db9 Implement the XPath relational operators and the `round()` function.
cmlenz
parents: 160
diff changeset
68 substring-before(), translate(), and true().
168
5f538e761701 Added recent changes to change log file.
cmlenz
parents: 162
diff changeset
69 * Non-ASCII characters in expressions should now be handled correctly (ticket
5f538e761701 Added recent changes to change log file.
cmlenz
parents: 162
diff changeset
70 #29).
5f538e761701 Added recent changes to change log file.
cmlenz
parents: 162
diff changeset
71 * Default values for arguments of template functions now also work with
5f538e761701 Added recent changes to change log file.
cmlenz
parents: 162
diff changeset
72 constants and complex expressions (they only worked for string or number
5f538e761701 Added recent changes to change log file.
cmlenz
parents: 162
diff changeset
73 literals before).
181
e103b75a96ce Some error message improvements for template directives. Thanks to Christian Boos for the patch!
cmlenz
parents: 169
diff changeset
74 * 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
75 (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
76 * 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
77 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
78 * 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
79 values (ticket #34).
148
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
80
169
dc6676d3b697 Fix syntax error in `path` module.
cmlenz
parents: 168
diff changeset
81
148
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
82 Version 0.1
230
84168828b074 Renamed Markup to Genshi in repository.
cmlenz
parents: 227
diff changeset
83 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
84 (Aug 3 2006, from branches/stable/0.1.x)
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
85
dcc9dc25bc59 Added changelog file, plus some README and setup tweaks.
cmlenz
parents:
diff changeset
86 * First public release
Copyright (C) 2012-2017 Edgewall Software