| 0.1.10 |
| - fixed propagation of 'caller' such that nested %def calls |
| within a <%call> tag's argument list propigates 'caller' |
| to the %call function itself (propigates to the inner |
| calls too, this is a slight side effect which previously |
| existed anyway) |
| - fixed bug where local.get_namespace() could put an |
| incorrect "self" in the current context |
| - fixed another namespace bug where the namespace functions |
| did not have access to the correct context containing |
| their 'self' and 'parent' |
| |
| 0.1.9 |
| - filters.Decode filter can also accept a non-basestring |
| object and will call str() + unicode() on it [ticket:47] |
| - comments can be placed at the end of control lines, |
| i.e. if foo: # a comment, [ticket:53], thanks to |
| Paul Colomiets |
| - fixed expressions and page tag arguments and with embedded |
| newlines in CRLF templates, follow up to [ticket:16], thanks |
| Eric Woroshow |
| - added an IOError catch for source file not found in RichTraceback |
| exception reporter [ticket:51] |
| |
| 0.1.8 |
| - variable names declared in render methods by internal |
| codegen prefixed by "__M_" to prevent name collisions |
| with user code |
| - added a Babel (http://babel.edgewall.org/) extractor entry |
| point, allowing extraction of gettext messages directly from |
| mako templates via Babel [ticket:45] |
| - fix to turbogears plugin to work with dot-separated names |
| (i.e. load_template('foo.bar')). also takes file extension |
| as a keyword argument (default is 'mak'). |
| - more tg fix: fixed [ticket:35], allowing string-based |
| templates with tgplugin even if non-compatible args were sent |
| |
| 0.1.7 |
| - one small fix to the unit tests to support python 2.3 |
| - a slight hack to how cache.py detects Beaker's memcached, |
| works around unexplained import behavior observed on some |
| python 2.3 installations |
| |
| 0.1.6 |
| - caching is now supplied directly by Beaker, which has |
| all of MyghtyUtils merged into it now. The latest Beaker |
| (0.7.1) also fixes a bug related to how Mako was using the |
| cache API. |
| - fix to module_directory path generation when the path is "./" |
| [ticket:34] |
| - TGPlugin passes options to string-based templates [ticket:35] |
| - added an explicit stack frame step to template runtime, which |
| allows much simpler and hopefully bug-free tracking of 'caller', |
| fixes #28 |
| - if plain Python defs are used with <%call>, a decorator |
| @runtime.supports_callable exists to ensure that the "caller" |
| stack is properly handled for the def. |
| - fix to RichTraceback and exception reporting to get template |
| source code as a unicode object #37 |
| - html_error_template includes options "full=True", "css=True" |
| which control generation of HTML tags, CSS [ticket:39] |
| - added the 'encoding_errors' parameter to Template/TemplateLookup |
| for specifying the error handler associated with encoding to |
| 'output_encoding' [ticket:40] |
| - the Template returned by html_error_template now defaults to |
| output_encoding=sys.getdefaultencoding(), |
| encoding_errors='htmlentityreplace' [ticket:37] |
| - control lines, i.e. % lines, support backslashes to continue long |
| lines (#32) |
| - fixed codegen bug when defining <%def> within <%call> within <%call> |
| - leading utf-8 BOM in template files is honored according to pep-0263 |
| |
| 0.1.5 |
| - AST expression generation - added in just about everything |
| expression-wise from the AST module [ticket:26] |
| - AST parsing, properly detects imports of the form "import foo.bar" |
| [ticket:27] |
| - fix to lexing of <%docs> tag nested in other tags |
| - fix to context-arguments inside of <%include> tag which broke |
| during 0.1.4 [ticket:29] |
| - added "n" filter, disables *all* filters normally applied to an expression |
| via <%page> or default_filters (but not those within the filter) |
| - added buffer_filters argument, defines filters applied to the return value |
| of buffered/cached/filtered %defs, after all filters defined with the %def |
| itself have been applied. allows the creation of default expression filters |
| that let the output of return-valued %defs "opt out" of that filtering |
| via passing special attributes or objects. |
| |
| 0.1.4 |
| - got defs-within-defs to be cacheable |
| - fixes to code parsing/whitespace adjusting where plain python comments |
| may contain quote characters [ticket:23] |
| - fix to variable scoping for identifiers only referenced within |
| functions |
| - added a path normalization step to lookup so URIs like |
| "/foo/bar/../etc/../foo" pre-process the ".." tokens before checking |
| the filesystem |
| - fixed/improved "caller" semantics so that undefined caller is |
| "UNDEFINED", propigates __nonzero__ method so it evaulates to False if |
| not present, True otherwise. this way you can say % if caller:\n |
| ${caller.body()}\n% endif |
| - <%include> has an "args" attribute that can pass arguments to the |
| called template (keyword arguments only, must be declared in that |
| page's <%page> tag.) |
| - <%include> plus arguments is also programmatically available via |
| self.include_file(<filename>, **kwargs) |
| - further escaping added for multibyte expressions in %def, %call |
| attributes [ticket:24] |
| |
| |
| 0.1.3 |
| - ***Small Syntax Change*** - the single line comment character is now |
| *two* hash signs, i.e. "## this is a comment". This avoids a common |
| collection with CSS selectors. |
| - the magic "coding" comment (i.e. # coding:utf-8) will still work with |
| either one "#" sign or two for now; two is preferred going forward, i.e. |
| ## coding:<someencoding>. |
| - new multiline comment form: "<%doc> a comment </%doc>" |
| - UNDEFINED evaluates to False |
| - improvement to scoping of "caller" variable when using <%call> tag |
| - added lexer error for unclosed control-line (%) line |
| - added "preprocessor" argument to Template, TemplateLookup - is a single |
| callable or list of callables which will be applied to the template text |
| before lexing. given the text as an argument, returns the new text. |
| - added mako.ext.preprocessors package, contains one preprocessor so far: |
| 'convert_comments', which will convert single # comments to the new ## |
| format |
| |
| 0.1.2 |
| - fix to parsing of code/expression blocks to insure that non-ascii |
| characters, combined with a template that indicates a non-standard |
| encoding, are expanded into backslash-escaped glyphs before being AST |
| parsed [ticket:11] |
| - all template lexing converts the template to unicode first, to |
| immediately catch any encoding issues and ensure internal unicode |
| representation. |
| - added module_filename argument to Template to allow specification of a |
| specific module file |
| - added modulename_callable to TemplateLookup to allow a function to |
| determine module filenames (takes filename, uri arguments). used for |
| [ticket:14] |
| - added optional input_encoding flag to Template, to allow sending a |
| unicode() object with no magic encoding comment |
| - "expression_filter" argument in <%page> applies only to expressions |
| - added "default_filters" argument to Template, TemplateLookup. applies only |
| to expressions, gets prepended to "expression_filter" arg from <%page>. |
| defaults to ["unicode"], so that all expressions get stringified into u'' |
| by default (this is what Mako already does). By setting to [], expressions |
| are passed through raw. |
| - added "imports" argument to Template, TemplateLookup. so you can predefine |
| a list of import statements at the top of the template. can be used in |
| conjunction with default_filters. |
| - support for CRLF templates...whoops ! welcome to all the windows users. |
| [ticket:16] |
| - small fix to local variable propigation for locals that are conditionally |
| declared |
| - got "top level" def calls to work, i.e. template.get_def("somedef").render() |
| |
| 0.1.1 |
| - buffet plugin supports string-based templates, allows ToscaWidgets to work |
| [ticket:8] |
| - AST parsing fixes: fixed TryExcept identifier parsing |
| - removed textmate tmbundle from contrib and into separate SVN location; |
| windows users cant handle those files, setuptools not very good at |
| "pruning" certain directories |
| - fix so that "cache_timeout" parameter is propigated |
| - fix to expression filters so that string conversion (actually unicode) |
| properly occurs before filtering |
| - better error message when a lookup is attempted with a template that has no |
| lookup |
| - implemented "module" attribute for namespace |
| - fix to code generation to correctly track multiple defs with the same name |
| - "directories" can be passed to TemplateLookup as a scalar in which case it |
| gets converted to a list [ticket:9] |
| |
| 0.1.0 |
| |
| Initial release. |