Skip to content

Loop properties revindex and revindex0 still wrong in Jinja2 2.10 #794

@unusual-thoughts

Description

@unusual-thoughts

Expected Behavior

loop.revindex should be 1 when using a reversed iterator of length 1

jinja2.Template("{% for i in lst|reverse %}{{ loop.revindex }}:{{ i }}, {% endfor %}")
      .render(lst=[10])

should print out: '1:10, '

Actual Behavior

The index of the only iteration is set to 2

jinja2.Template("{% for i in lst|reverse %}{{ loop.revindex }}:{{ i }}, {% endfor %}")
      .render(lst=[10])

prints out: '2:10, '

However:

jinja2.Template("{% for i in lst|reverse %}{{ loop.revindex }}:{{ i }}, {% endfor %}")
      .render(lst=[10, 11])

correctly prints out: '2:11, 1:10, '

Template Code

{% for i in lst|reverse %}{{ loop.revindex }}:{{ i }}, {% endfor %}

Your Environment

  • Python version: 3.6.4
  • Jinja version: 2.10

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions