blob: 29a981d6eb92204c7f6730d4cfdf691c10f9dd85 [file] [log] [blame]
Jinja Changelog
===============
Version 1.1
-----------
(codename: sinka, released Jun 1, 2007)
- blocks now support ``{{ super() }}`` to render the parent output.
- debugging system improved, smaller filesize for the cached files.
Debugging works now well for any module using linecache.
- ``{{ debug() }}`` can now be used to get a list of filters and
tags.
- the template lexer keeps not track of brace, parenthesis and
bracket balance in order to not break variable tags apart if they
are configured to look like this: ``${expr}``. This also fixes
the problem with nested dicts in variable expressions.
- it's now possible to configure the variable blocks to look the
same as the block delimiters. Thus you can set the syntax to something
like ``{ / }`` for both blocks and variables.
- added whitespace management system for the template designer.
- some small bugfixes.
- improved security system regarding function calls and variable
assignment in for loops.
- added `lipsum` function to generate random text.
- strings without unicode characters are processed as binary strings now
to workaround problems with `datetime.strftime` which only accepts
binary strings.
- it's now possible to use newlines in string literals
- developer friendly traceback is now toggleable
- the variable failure is now pluggable by replacing the undefined
singleton for an environment instance
- fixed issue with old-style classes not implementing `__getitem__`
(thanks to Axel Bรถhm for discovering that bug)
- added a bunch of new docstrings to the Jinja classes. Makes fun now to
use pydoc :-)
- fixed severe memcaching bug. Formerly it wasn't possible to use memcaching
without enabling disk cache.
- fixed a bug that allowed users to override the special names `_`, `true` etc.
- added `batch` and `slice` filters for batching or slicing sequences
- added `sum`, `abs`, `round` and `sort` filters. This fixes #238
- added `striptags` and `xmlattr` filters for easier SGML/XML processing
- the trans tag does not need explicit naming for variables with the same
name any more. You can now use ``{% trans foo %}`` instead of the verbose
version ``{% trans foo=foo %}``.
- reimplemented Buffet plugin so that it works at least for pylons
- added `Environment.get_translations_for_string`
- fixed a bug in the parser that didn't unescape keyword arguments. (thanks
to Alexey Melchakov for reporting)
- You can now use the environment to just tokenize a template. This can
be useful for syntax highlighting or other purposes.
- added optional C-implementation of the context baseclass.
- you can now use optional parentheses around macro defintions. Thus it's
possible to write ``{% macro foo(a, b, c) %}`` instead of ``{% macro
foo a, b, c %}``.
- additional macro arguments now end up in `varargs`.
- implemented the `{% call %}` block. `call` and `endcall` can still be used
as identifiers until Jinja 1.3
- it's not possible to stream templates.
- fixed a corner case when defining a block inside of a condition
- the cached loader mixin is now able to cache multiple templates from
different loaders in the same cache folder.
- Translatable strings returned by ``_()`` will leave their string formatting
signs untouched. Thanks to Stefan Ebner for reporting.
- ``{% block name "data" %}`` is now an alias for
``{% block name %}data{% endblock %}``. Note that the second argument can
be an expression. As soon as you specify an expression as second argument
the closing tag has to be omitted.
- It's now possible to iterate over iterators additionally to sequences.
If the iterator is inifite it will crash however, so makes sure you don't
pass something like that to a template!
- added `rendetemplate` to render included templates in an isolated
environment and get the outout back.
- added `simplefilter` decorator.
- improved ChoiceLoader error reporting (thanks to Bryan McLemore)
- fixed extended slicing
- reworked loader layer. All the cached loaders now have "private" non cached
baseclasses so that you can easily mix your own caching layers in.
- added `MemcachedLoaderMixin` and `MemcachedFileSystemLoader` contributed
by Bryan McLemore.
Version 1.0
-----------
(codename: siyutusan, released Mar 23, 2007)
- Initial release