devel-proposed by team
Generated: {{ now }}
{% for team in all_teams|sort %}
- {{ team }} ({{ ngettext("%(num)d package", "%(num)d packages", team_to_attn_count[team]) }} needing attention)
{% endfor %}
{% for team in all_teams|sort %}
{{ team }}
{{ ngettext("%(num)d package", "%(num)d packages", team_to_attn_count[team]) }} needing attention, {{ ngettext("%(num)d package", "%(num)d packages", team_to_problems[team]|count - team_to_attn_count[team]) }} not yet considered late
{% for prob in team_to_problems[team] %}
{% set d = prob.data %}
{% set p = prob.package_in_proposed %}
-
{% if prob.kind == "regressing-other" %}
{{ prob.regressing_package }} blocking
{{ p }}
{% else %}
{{ p }}
{% endif %}
{% set urlbase = "https://launchpad.net/ubuntu/+source/" + p + "/" %}
({% if d['old-version'] != "-" %}{{ d["old-version"] }}{% else %}-{% endif %}
to
{{ d["new-version"] }})
{% if prob.kind == "regressing-other" %}
for
{% else %}
in proposed for
{% endif %}
{% if prob.age == -1 %}
an unknown number of days
{% else %}
{{ ngettext("%(num)d day", "%(num)d days", prob.age|int) }}
{% endif %}
{% if d["policy_info"]["update-excuse"] %}
- Excuses bugs:
{% for bug in d["policy_info"]["update-excuse"]|map("int")|sort|map("string") %}
#{{ bug }}
{%- if not loop.last %}, {% endif %}
{% endfor %}
{% endif %}
{% if d.get("missing-builds") %}
- Missing builds, see excuses
{% endif %}
{% if 'no-binaries' in d["reason"] %}
- No binaries
{% endif %}
{% if prob.regressions %}
-
Regressions
{% for regr in prob.regressions %}
-
{{ regr.package_version }}:
{% for arch_regr in regr.arches %}
{{ arch_regr.arch }} (log, history)
{%- if not loop.last %}, {% endif %}
{% endfor %}
{% endfor %}
{% endif %}
{% if prob.waiting %}
-
Waiting
{% for p in prob.waiting %}
- {{ p }}
{% endfor %}
{% endif %}
{% if prob.kind != "regressing-other" %}
{% if d.get('dependencies', {}).get('blocked-by', []) %}
- Depends on {{ d['dependencies']['blocked-by']|join(", ") }}
{% endif %}
{% if prob.unsatdepends %}
-
Unsatisfiable depends:
{% for unsatd in prob.unsatdepends %}
- {{ unsatd }}
{% endfor %}
{% endif %}
{% if prob.unsatbuilddep %}
-
Unsatisfiable build depends:
{% for unsatbd in prob.unsatbuilddep %}
- {{ unsatbd }}
{% endfor %}
{% endif %}
{% if prob.brokenbin %}
- Binaries broken by the update: {{ prob.brokenbin | join(' ') }}
{% endif %}
{% if prob.componentmismatch %}
-
Component mismatch entries
{% for component in prob.componentmismatch %}
- {{ component }}
{% endfor %}
{% endif %}
{% if d["policy_info"]["block-bugs"] %}
- Blocked by bug:
{% for bug in d["policy_info"]["block-bugs"]|map("int")|sort|map("string") %}
#{{ bug }}
{%- if not loop.last %}, {% endif %}
{% endfor %}
{% endif %}
{% if d["hints"] %}
{% for hint in d["hints"] %}
{% if hint["hint-type"] %}
{% if hint["hint-type"] == "block" %}
- Blocked by hint
{% if hint["hint-from"] %}
from {{ hint["hint-from"] }}
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% if d["is-candidate"] %}
- candidate
{% endif %}
{% endif %}
{% if d.get('dependencies', {}).get('migrate-after', []) %}
- Requires
{% for depmigrate in d.get('dependencies', {}).get('migrate-after', []) %}
{{ depmigrate }}
{%- if not loop.last %}, {% endif %}
{% endfor %}
to migrate
{% endif %}
{% endfor %}
{% endfor %}