Subject: CVS commit: pkgsrc/textproc/py-jinja2
From: Adam Ciarcinski
Date: 2020-02-01 21:31:29
Message id: 20200201203129.29092FBF4@cvs.NetBSD.org

Log Message:
py-jinja2: updated to 2.11.1

Version 2.11.1
- Fix a bug that prevented looking up a key after an attribute
  (``{{ data.items[1:] }}``) in an async template.

Version 2.11.0
- 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
  :func:`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 :class:`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
  :class:`StrictUndefined`.
- Fix behavior of ``loop`` control variables such as ``length`` and
  ``revindex0`` when looping over a generator.
- Async support is only loaded the first time an environment enables
  it, in order to avoid a slow initial import.
- In async environments, the ``|map`` filter will await the filter
  call if needed.
- In for loops that access ``loop`` attributes, the iterator is not
  advanced ahead of the current iteration unless ``length``,
  ``revindex``, ``nextitem``, or ``last`` are accessed. This makes it
  less likely to break ``groupby`` results.
- In async environments, the ``loop`` attributes ``length`` and
  ``revindex`` work for async iterators.
- In async environments, values from attribute/property access will
  be awaited if needed.
- :class:`~loader.PackageLoader` doesn't depend on setuptools or
  pkg_resources.
- ``PackageLoader`` has limited support for :pep:`420` namespace
  packages.
- Support :class:`os.PathLike` objects in
  :class:`~loader.FileSystemLoader` and :class:`~loader.ModuleLoader`.
- :class:`~nativetypes.NativeTemplate` correctly handles quotes
  between expressions. ``"'{{ a }}', '{{ b }}'"`` renders as the tuple
  ``('1', '2')`` rather than the string ``'1, 2'``.
- Creating a :class:`~nativetypes.NativeTemplate` directly creates a
  :class:`~nativetypes.NativeEnvironment` instead of a default
  :class:`Environment`.
- After calling ``LRUCache.copy()``, the copy's queue methods point to
  the correct queue.
- Compiling templates always writes UTF-8 instead of defaulting to the
  system encoding.
- ``|wordwrap`` filter treats existing newlines as separate paragraphs
  to be wrapped individually, rather than creating short intermediate
  lines.
- Add ``break_on_hyphens`` parameter to ``|wordwrap`` filter.
- Cython compiled functions decorated as context functions will be
  passed the context.
- When chained comparisons of constants are evaluated at compile time,
  the result follows Python's behavior of returning ``False`` if any
  comparison returns ``False``, rather than only the last one.
- Tracebacks for exceptions in templates show the correct line numbers
  and source for Python >= 3.7.
- Tracebacks for template syntax errors in Python 3 no longer show
  internal compiler frames.
- Add a ``DerivedContextReference`` node that can be used by
  extensions to get the current context and local variables such as
  ``loop``.
- Constant folding during compilation is applied to some node types
  that were previously overlooked.
- ``TemplateSyntaxError.source`` is not empty when raised from an
  included template.
- Passing an ``Undefined`` value to ``get_template`` (such as through
  ``extends``, ``import``, or ``include``), raises an
  ``UndefinedError`` consistently. ``select_template`` will show the
  undefined message in the list of attempts rather than the empty
  string.
- ``TemplateSyntaxError`` can be pickled.

Files:
RevisionActionfile
1.27modifypkgsrc/textproc/py-jinja2/Makefile
1.16modifypkgsrc/textproc/py-jinja2/distinfo