{% macro status_badge(thing) -%} {% if not thing or thing.ident == 'unknown' %} ? {% else %} {{ thing.abbrev }} {% endif %} {%- endmacro %} {% macro naming_status_badge(thing) -%} {% if not thing or thing.ident == 'unknown' %} {% else %} {% endif %} {%- endmacro %} {% macro pkglink( pkg, ignore_misnamed=False, ignore_unversioned_requires=False, after_name='') -%} {{- pkglink_icon(pkg) -}} {{- pkg.name -}} {{- after_name -}} {{- pkg_naming_badge( pkg, ignore_misnamed=ignore_misnamed, ignore_unversioned_requires=ignore_unversioned_requires, ) -}} {{- ftbfs_badge(pkg) -}} {{- orphan_badge(pkg) -}} {{- exception_badge(pkg) -}} {%- endmacro %} {% macro orphan_badge(pkg) -%} {%- if 'orphan' in pkg['maintainers'] -%} {{ orphan_clock_badge(pkg) }} {%- endif -%} {%- endmacro -%} {% macro orphan_clock_badge(pkg) -%} {%- set change = pkg.get('last_repo_metadata_change') -%} {%- if change -%} {%- if (now - change).days >= 6*7 -%} {{ _orphan_clock_badge_i("hourglass-o", change) }} {%- elif (now - change).days > 5*7 -%} {{ _orphan_clock_badge_i("hourglass-3", change) }} {%- elif (now - change).days > 3*7 -%} {{ _orphan_clock_badge_i("hourglass-2", change) }} {%- elif (now - change).days >= 0 -%} {{ _orphan_clock_badge_i("hourglass-1", change) }} {%- else -%} {{ _orphan_clock_badge_i("hourglass", change) }} {%- endif -%} {%- endif -%} {%- endmacro -%} {% macro _orphan_clock_badge_i(icon, change) -%} {%- endmacro %} {% macro exception_badge(pkg) -%} {%- for grp in pkg['groups'].values() -%} {%- if 'exception' in grp and not grp['hidden'] and pkg['name'] in grp['seed_packages'] %} {%- endif -%} {%- endfor -%} {%- endmacro %} {% macro pkglink_icon(pkg) -%} {%- endmacro %} {% macro ftbfs_badge(pkg) -%} {% if pkg.ftbfs_age %} {% for i in range(pkg.ftbfs_age) %}!{% endfor %} {%- endif -%} {%- endmacro %} {% macro pkglink_text(pkg) -%} {{ pkg.name }} {%- endmacro %} {% macro pkg_naming_badge(pkg, ignore_misnamed=False, ignore_unversioned_requires=False) -%} {%- if pkg['is_misnamed'] and not ignore_misnamed %} {{ misnamed_badge() }} {% endif -%} {%- if pkg['unversioned_requires'] and not ignore_unversioned_requires %} {{ unversioned_requires_badge( pkg['blocked_requires']) }} {% endif -%} {%- endmacro %} {% macro _naming_badge(color, text) -%} {%- endmacro %} {% macro misnamed_badge() -%} {{ _naming_badge('F0AD4E', 'Misnamed package') }} {%- endmacro %} {% macro unversioned_requires_badge(blocked) -%} {%- if blocked -%} {{ _naming_badge('a65959', 'Ambiguous Requires (blocked)') }} {%- else -%} {{ _naming_badge('8c6699', 'Ambiguous Requires') }} {%- endif -%} {%- endmacro %} {% macro print_deptree(nodes) -%}