python-Jinja2/python-Jinja2.spec

94 lines
2.7 KiB
RPMSpec
Raw Normal View History

#
# spec file for package python-Jinja2
#
- update to 2.11.1 * Fix a bug that prevented looking up a key after an attribute ({{ data.items[1:] }}) in an async template * Drop support for Python 2.6, 3.3, and 3.4. This will be the last version to support Python 2.7 and 3.5. * Added a new ChainableUndefined class to support getitem and getattr on an undefined object. * Allow {%+ syntax (with NOP behavior) when lstrip_blocks is disabled. * Added a default parameter for the map filter. * Exclude environment globals from meta.find_undeclared_variables(). * Float literals can be written with scientific notation, like 2.56e-3. * Int and float literals can be written with the ‘_’ separator for legibility, like 12_345. * Fix a bug causing deadlocks in LRUCache.setdefault * The trim filter takes an optional string of characters to trim. * A new jinja2.ext.debug extension adds a {% debug %} tag to quickly dump the current context and available filters and tests. * Lexing templates with large amounts of whitespace is much faster. * Parentheses around comparisons are preserved, so {{ 2 * (3 < 5) }} outputs “2” instead of “False”. * Add new boolean, false, true, integer and float tests. * The environment’s finalize function is only applied to the output of expressions (constant or not), not static template data. * When providing multiple paths to FileSystemLoader, a template can have the same name as a directory. * Always return Undefined when omitting the else clause in a {{ 'foo' if bar }} expression, regardless of the environment’s undefined class. Omitting the else clause is a valid shortcut and should not raise an error when using StrictUndefined. * Fix behavior of loop control variables such as length and revindex0 when OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Jinja2?expand=0&rev=76
2020-02-18 17:34:49 +00:00
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%ifarch %{ix86} armv7l
%bcond_with test
%else
%bcond_without test
%endif
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define oldpython python
Name: python-Jinja2
Accepting request 800006 from home:jgrassler:branches:devel:languages:python - update to 2.11.1 * Fix a bug that caused callable objects with __getattr__, like :class:~unittest.mock.Mock to be treated as a :func:contextfunction. :issue:1145 * Update wordcount filter to trigger :class:Undefined methods by wrapping the input in :func:soft_unicode. :pr:1160 * Fix a hang when displaying tracebacks on Python 32-bit. :issue:1162 * Showing an undefined error for an object that raises AttributeError on access doesn't cause a recursion error. :issue:1177 * Revert changes to :class:~loaders.PackageLoader from 2.10 which removed the dependency on setuptools and pkg_resources, and added limited support for namespace packages. The changes caused issues when using Pytest. Due to the difficulty in supporting Python 2 and :pep:451 simultaneously, the changes are reverted until 3.0. :pr:1182 * Fix line numbers in error messages when newlines are stripped. :pr:1178 * The special namespace() assignment object in templates works in async environments. :issue:1180 * Fix whitespace being removed before tags in the middle of lines when lstrip_blocks is enabled. :issue:1138 * :class:~nativetypes.NativeEnvironment doesn't evaluate intermediate strings during rendering. This prevents early evaluation which could change the value of an expression. :issue:1186 OBS-URL: https://build.opensuse.org/request/show/800006 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Jinja2?expand=0&rev=84
2020-05-04 09:56:10 +00:00
Version: 2.11.2
Release: 0
Summary: A template engine written in pure Python
License: BSD-3-Clause
URL: https://github.com/pallets/jinja
Source: https://files.pythonhosted.org/packages/source/J/Jinja2/Jinja2-%{version}.tar.gz
BuildRequires: %{python_module MarkupSafe >= 0.23}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: dos2unix
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-Babel >= 0.8
Requires: python-MarkupSafe >= 0.23
# Do not declare buildarch as the tests are arch specific
#BuildArch: noarch
%ifpython2
Provides: %{oldpython}-jinja2 = %{version}
Obsoletes: %{oldpython}-jinja2 < %{version}
%endif
%python_subpackages
%description
Jinja2 is a template engine written in pure Python. It provides a Django
inspired non-XML syntax but supports inline expressions and an optional
sandboxed environment.
%package -n python-Jinja2-vim
Summary: Jinja2 syntax files for Vim
%if 0%{?suse_version} || 0%{?fedora_version} >= 24
Recommends: vim
%endif
%description -n python-Jinja2-vim
Vim syntax highlighting scheme for Jinja2 templates.
%prep
%setup -q -n Jinja2-%{version}
dos2unix LICENSE.rst # Fix wrong EOL encoding
%build
%python_build
%install
%python_install
install -Dm644 ext/Vim/jinja.vim %{buildroot}%{_datadir}/vim/site/syntax/jinja.vim # Install VIM syntax file
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%if %{with test}
%pytest
%endif
%files %{python_files}
%license LICENSE.rst
%doc README.rst CHANGES.rst artwork examples
%{python_sitelib}/jinja2
%{python_sitelib}/Jinja2-%{version}-py%{python_version}.egg-info
%files -n python-Jinja2-vim
%dir %{_datadir}/vim
%dir %{_datadir}/vim/site
%dir %{_datadir}/vim/site/syntax
%{_datadir}/vim/site/syntax/jinja.vim
%changelog