Tayra

Latest version: v0.45dev

Safety actively analyzes 688758 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

0.45dev

-------

``Wed Jan 05, 2014``

- moving to git repository and project is now tracked through github.

0.44dev

-------

``Wed Jun 22, 2013``

- TTLCompiler that compiles tayra templates can include additional helper
modules and its methods into ``h`` namespace accessible inside the template
script. This configuration is done via ttlcompiler['helpers'] settings.
- TTLCompiler setting `beautify_html` is disabled by default.
- in self-closing tags ``/>`` is replaced with plain ``>``, and while
generating a void-element it is always generated with ``/>``.
- If a tayra tag element that belongs to the class of void-elements,
include a element-content it will be silently ignored, though a warning will
be generated when compiling them.
- added pynamespace library function.

0.43dev

-------

``Wed Jun 12, 2013``

- Added syntax to prune leading and training whitespace of tag's content.
- Refactored tag-handling logic in ast.py module.
- Documentation.

0.42dev

-------

``Wed May 29, 2013``

- CHANGELOG.rst and TODO.rst are web-friendly.

- Removed unwanted glob-patterns from MANIFEST.in

- Sphinx documentation, min-width is set to 970px.

- TTLCompiler compiler implements `pluggdapps.interfaces.ITemplate` interface.

- ``import`` is now used for importing python modules and ``include`` is now
used for importing TTL template-modules. Test cases added to verify this.

- Bug fixes while making h.packagedin() calls.

0.41dev

-------

``Tue May 21, 2013``

- Catalog of configuration settings for tayra plugins is automatically
generated using pluggapps' ``pa-script`` and sphinx-documented.

- From tayra command line -c switch accepts a context file containing a
python dictionary as context, which is supplied as template context.

- Plugins are referred using its canonical-name.

- Moved sphinx documentation to docs/ directory.

0.4dev

------

``Tue Mar 12, 2013``

- support inline tags along with text. Eg,
``<div> hello world <span> how are you``

- Tags can also be nested in a text line. Eg,
``First name : <inptext :firstname>``

- Added `tagspan` and `textspan` grammar to support nested tags in the same
line.

- Added return statement, where template functions can return objects
other than template code. A corresponding popobject() instruction is added.

- Template plugins can define configuration settings using ConfigDict and
default_settings method. Although settings value must always be
string. ``ISettings`` methods added for BaseTTL and other plugins
implemented in tayra.

- Package info (package() entry point) returns list of template plugins
available in tayra package.

- Lexer preserves the token and its line no in ttl text while passing them to
the parser.

- Line no information from lexer are coded in the intermediate python file
in debug mode to accurately map exceptions to the correct line in the
ttl-file.

- Revamped filter block handling in ast and pycode.

- Codegen used __traceback_decorator__ to map exceptions to ttl file location.

- Improved vim-plugin for TTL filetype.

- Expression substitution is made pluggable. Any text within the ``${ ... }``
syntax is now handled by a runtime plugin implementing `ITayraExpression`
interface.

- TTLCompiler['expression.default'] configuration parameter specifies
the default `ITayraExpression` plugin to handle the expression.

- To invoke a specific plugin, ``${-<name> ... }``,
where <name> is the plugin name to handle expression substitution.

- Renamed TTLCompiler['use_tag_plugins'] to TTLCompiler['tag.plugins'].

- ITayraEscFilter specification is merged with ITayraExpression interface
specification.

- TayraExpression plugin `py` added. This plugin is configured as the default
handler for expression substitution.

- TayraExpression plugin `evalpy` added.

- Added test cases for pluggable expression substitution feature.

Instead of blindly importing all utility functions from pluggdapps.utils,
these functions are first imported, individually, into tayra.utils and
then populated into a container object. This container object is finally made
available in template context as ``h``. Eg, ::

<head>
<body>
${ h.parsecsv( 'one, two, three' ) }
${ h.parsecsvlines( 'one, \\n two,
three' ) }
${ dir(h) }

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.