* Fixed ``py:switch`` error message wrongly mentioning ``py:with`` * Support for multiline ``${}`` expressions * Subsequent text nodes are now squashed into a single text node. This allows translating whole paragraphs instead of single sentences. * Allow code and function calls inside tag attributes * Added ``strip_text`` option to XMLTemplate and i18n collector to ensure leading and trailing spaces are stipped by text nodes (also leads to minified HTML) * Some HTML nodes that do not require being closed but is commonly considered best practice to close them are now emitted with ending tag (IE: <p>) * Generally improved code documentation to lower entry barrier for contributors
0.5.5
------------------
* ``py:attrs`` will now emit the attribute name itself or will omit the attribute at all in case of ``bool`` values for 'checked', 'disabled', 'readonly', 'multiple', 'selected', 'nohref', 'ismap', 'declare' and 'defer',
0.5.4
------------------
* ``py:switch`` now correctly supports multiple ``py:case`` statements. * text inside ``<script>`` and ``<style>`` tags is no longer collected translation. * Syntax errors now report the line and the surrounding code when there is a markup or python syntax error. * As ``py:swtich`` discards all its content apart from ``py:case`` and ``py:else`` statements it will now correctly report an error when the statements has other content. * ``py:else`` will now correctly detect spurious content between itself and ``py:if`` as the two must be consequential. * Improved code documentation on core classes.
0.5.3
------------------
* ``py:with`` statement now keeps order of variables, so that variables can depend from each other. * Babel is no longer a dependency unless you want to use the message extractor.
0.5.2
------------------
* TranslatableTextNodes are now only generated for non-empty strings * ``py:with`` statement now accepts multiple variables separated by semicolon * Babel message extractor fixed on Python2