You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Reverted the change introduced in version 3.0 to use uppercase -E and -V option flags for extension and variable files. Fixes the SCons builder, which was still using lowercase options.
Changed the way how template variables given as part of the command-line call are defined. From this version all unknown long options which has a proper value are interpreted as a template variable, e.g. --foo=bar or --foo bar. Note that -v foo bar is not working anymore.
Fixed an issue where the command-line call yasha ../template.j2 searched for template companion files till root folder.
Python literals can be used as part of the command-line call, e.g. yasha --foo "['bar', 'baz']" template.j2.
Added env template filter to read system environment variable.
Added shell template filter to run a shell command. and to connect its standard output. Requires Python >= 3.5.
Added subprocess template filter to spawn new processes, but unlike shell a CompletedProcess instance is returned, or CalledProcessError in case of error. Requires Python >= 3.5.
Added parser for XML type of variable files. Uses xmltodict.
Added command-line option -c to set template encoding. Default is UTF-8.
JSON parser updated to use safe_load (security).
Within extension file, custom variable file parsers are now defined either as a function named as parse_+ <file extension>, or the parse-function is given via PARSERS dictionary with the key indicating the file extension.
Within extension file, custom filters and tests can be also given via FILTERS and TESTS dictionary. This allows using external filters easily, e.g. from Ansible.
Common extension file can be now set via YASHA_EXTENSIONS system environment variable.
Command-line option --no-variables changed to --no-variable-file.
Command-line option --no-extensions changed to --no-extension-file.
Removed the variable/extension file overwrite protection introduced in version 3.1. Caused more confusion than protection.