{% extends "list.html" %} {% block title %} {{ patchset.subject }} — {{ cfg("sr.ht", "site-name") }} lists {% endblock %} {% macro msg_header(msg, showfrom=True) %}
{% if showfrom %}
{% set from_hdr = msg.parsed()['From'] %} {% set from = parseaddr(from_hdr) %} {% if msg.sender != None %} {{from[0]}} {% else %} {{from[0]}} {% endif %} {% if current_user %} <{{ from[1] }}> {% endif %}
{% endif %}
{{ msg.created | date }}
{% endmacro %} {% macro display_msg(msg, body=None, index=0, standalone=True) %} {{ msg_header(msg) }} {% if msg.id in feedback %} {% set feedback = feedback[msg.id] %} {% else %} {% set feedback = None %} {% endif %} {% if feedback and feedback.feedback_by_line.keys() %} {% set last_line = max(feedback.feedback_by_line.keys()) %} {% endif %}
  {%- for line in (body if body else format_body(msg)).splitlines() -%}
  {{- line + "\n" -}}
  {%- set line = loop.index + index - 1 -%}
  {%- if feedback and line in feedback.feedback_by_line -%}
{% if feedback %} {% for sub in feedback.feedback_by_line[line] %} {% set child = sub.source_msg._email %}
{{ display_msg(child, body="\n".join(sub.lines), index=sub.source_region[0], standalone=False) }} {# Generate link to next message fragment #} {% set next = nextmsg(feedback, child, line) %} {% if next %}
{% if msg.is_patch %} {% else %} {% endif %} Next {{icon("caret-right")}}
{% endif %}
{% endfor %} {% endif %}
  {%- endif -%}
{%- endfor -%}
{% if any(feedback.standalone_feedback) and standalone %} {% for feedback in feedback.standalone_feedback %} {% if feedback.source_msg._email not in patches %}
{% set msg = feedback.source_msg._email %} {{ msg_header(msg) }}
{{"\n".join(feedback.lines)}}
{% endif %} {% endfor %} {% endif %} {% endmacro %} {% block content %}
{% if user_message %}
{{user_message}}
{% endif %} {% if patchset.cover_letter %} {% set msg = patchset.cover_letter %} {% else %} {% set msg = patchset.patches[0] %} {% endif %}

{% if patchset.prefix %} {{patchset.prefix}}: {% endif %} {{patchset.subject}} v{{patchset.version}} {{patchset.status.value.replace("_", " ").upper()}}

{{ msg_header(msg) }}
{% if patchset.cover_letter %}
{{ format_body(msg) }}
{% else %}
{{ gen_cover_letter(patches) }}
{% endif %} {% if any(tools) %}
{% for tool in tools %}
{{icon(tool_icon_to_icon[tool.icon], cls=tool_icon_to_class[tool.icon])}} {{tool_details(tool.details)}}
{% endfor %}
{% endif %} {% for m in messages %} {% if m.id in feedback %} {% set fb = feedback[m.id] %} {% for feedback in fb.standalone_feedback %} {% set msg = feedback.source_msg._email %} {% if not msg.is_patch %} {{ display_msg(msg, body="\n".join(feedback.lines), standalone=False) }} {# Generate link to next message fragment #} {% set next = nextmsg(fb, msg) %} {% if next %}
{% if m.is_patch %} {% else %} {% endif %} Next {{icon("caret-right")}}
{% endif %} {% endif %} {% endfor %} {% endif %} {% endfor %}
Export patchset (mbox) {{icon('caret-right')}}
How do I use this?

Copy & paste the following snippet into your terminal to import this patchset into git:

curl -s {{root}}{{ url_for('patches.mbox',
              owner_name=owner.canonical_name, list_name=ml.name,
              patchset_id=patchset.id) }} | git am -3
Learn more about email & git {{icon('caret-right')}}
View this thread in the archives {{icon('caret-right')}}
{{csrf_token()}}
{% if ListAccess.moderate in access %}
{{csrf_token()}}
{% endif %}
{% for msg in patches %}

{{msg.subject}} Export this patch {{icon('caret-right')}}

{{ display_msg(msg) }} {% endfor %}
{% endblock %}