{% extends "layouts/base.html" %} {% block title %} Report for {{ release.short_display_name }} {{ package.filename }} ~ ATR {% endblock title %} {% block description %} Show the report for the {{ release.short_display_name }} {{ package.filename }} candidate draft file. {% endblock description %} {% block content %} {% set phase = release.phase.value %}

{% if phase == "release_candidate_draft" %} ← Back to Select a release {% else %} ← Back to Vote on {{ release.project.short_display_name }} {{ release.version }} {% endif %} {% if phase == "release_candidate_draft" %} COMPOSE {% else %} VOTE {% endif %}

Report for {{ release.project.short_display_name }} {{ release.version }}:

{{ package.filename }}

Note: Refresh this page to see the latest status of the verification tasks.

Report results

{% if check_results %} {# Define status_counts here so it's available globally in this block #} {% set status_counts = { "success": check_results|selectattr("status.value", "equalto", "success")|list|length, "failure": check_results|selectattr("status.value", "equalto", "failure")|list|length, "warning": check_results|selectattr("status.value", "equalto", "warning")|list|length, "exception": check_results|selectattr("status.value", "equalto", "exception")|list|length } %}
Status summary:
{% for status, count in status_counts.items() %} {% if count > 0 %}
{{ count }} {%- if status == "success" -%} Passed {%- elif status == "failure" -%} Issues {%- elif status == "warning" -%} Warning {%- elif status == "exception" -%} Error {%- else -%} {{ status|title }} {%- endif -%}
{% endif %} {% endfor %}
{% endif %}
{% if is_viewing_as_admin_fn(current_user.uid) and (release.phase.value == "release_candidate_draft") %}
{% endif %}
{% if check_results %} {% for check_result in check_results %}
{{ function_name_from_key(check_result.checker) }} {%- if check_result.status.value == "success" -%} Passed {%- elif check_result.status.value == "failure" -%} {% if status_counts['failure'] == 1 %} Issue {% else %} Issues {% endif %} {%- elif check_result.status.value == "warning" -%} {% if status_counts['warning'] == 1 %} Warning {% else %} Warnings {% endif %} {%- elif check_result.status.value == "exception" -%} {% if status_counts['exception'] == 1 %} Exception {% else %} Exceptions {% endif %} {%- else -%} {{ check_result.status.value|title }} {%- endif -%}
Checked: {{ check_result.created.strftime("%Y-%m-%d %H:%M:%S UTC") if check_result.created else "Not checked" }}
{% if check_result.message %}
{{ check_result.message }}
{% endif %} {% if (check_result.data is mapping) and (check_result.data.keys()|length > 0) %}
{% if check_result.status.value in ["failure", "exception"] %} View details {% elif check_result.status.value == "warning" %} View details {% else %} View details {% endif %} {% if check_result.checker.endswith("rat.check_licenses") %}
{{ check_result.data.get('approved_licenses', 0) }} files with approved licenses {% if check_result.data.get("unapproved_licenses", 0) > 0 %} {{ check_result.data.get('unapproved_licenses', 0) }} files with unapproved licenses {% endif %} {% if check_result.data.get("unknown_licenses", 0) > 0 %} {{ check_result.data.get('unknown_licenses', 0) }} files with unknown licenses {% endif %}
{% endif %} {% for key, value in check_result.data.items() %} {% if key != "debug_info" %} {% endif %} {% endfor %} {% if check_result.data.get("debug_info") is mapping %} {% for debug_key, debug_value in check_result.data.debug_info.items() %} {% endfor %} {% endif %}
{{ key|replace('_', ' ') |title }} {% if value is boolean %} {{ "Yes" if value else "No" }} {% elif value is mapping %} {% for k, v in value.items() %} {% endfor %}
{{ k|replace('_', ' ') |title }} {{ v }}
{% elif key == "unapproved_files" or key == "unknown_license_files" %} {% if value|length > 0 %} {% for file_info in value %} {% endfor %}
File License
{{ file_info.name }} {{ file_info.license }}
{% else %} None {% endif %} {% elif value is sequence and value is not string %} {{ value|join(", ") }} {% else %} {{ value }} {% endif %}
(Debug) {{ debug_key|replace('_', ' ') |title }} {% if debug_key == 'stderr' %}
{{ debug_value }}
{% elif debug_value is boolean %} {{ "Yes" if debug_value else "No" }} {% elif debug_value is none %} (None) {% else %} {{ debug_value }} {% endif %}
{% endif %}
{% endfor %} {% else %}

No verification tasks found for this file.

{% endif %}

Metadata

Filename: {{ package.filename }}

Size: {{ format_file_size(package.bytes_size) }}

Uploaded: {{ package.uploaded.strftime("%Y-%m-%d %H:%M:%S UTC") }}

{% endblock content %} {% block javascripts %} {{ super() }} {% endblock javascripts %} {% macro function_name_from_key(key) -%} {{- key.removeprefix("atr.tasks.checks.").replace("_", " ").replace(".", " ") | title -}} {%- endmacro %}