H037no longer reads a quoted string inside a template tag as an attribute name, sohref="{{ url "/a/b" "/a/c" }}"is not reported as a duplicatea. This started in 1.45.0.- A jinja call written over several lines keeps its closing bracket at the indent of the tag holding it, rather than pulling
) }}to the start of the line. - Arguments nested inside a jinja call written over several lines keep their depth, so the inner argument of
{{ function([nested(...)]) }}is no longer dedented by one level. - An element after a line that closes both a template block and an html tag, as in
{%- endif %}:</b>, keeps its own level instead of being indented one further. - A template tag written over several lines inside an attribute keeps the indentation the author gave it, so the body of
data-x='{{ f({ ... }) }}'no longer loses a space from every line. --single-attribute-per-linereaches attributes guarded by a template tag, so{% if x %} a="1" b="2" {% endif %}inside a tag no longer keeps them on one line past--max-line-length.- A tag whose attributes push its line past
--max-line-lengthis spread over several lines, where before only--max-attribute-lengthdecided. A line long because of its text is left alone, since breaking text would change what renders. - A tag whose name a template writes, as in
<{{ tag }}>, is read as a tag. It was not recognised at all, so a template block among its attributes was pulled out of the tag and re-indented to the start of the line, and its attributes went unformatted and unchecked.