<%inherit file="master.html"/> <%namespace name="captcha" module="bodhi.server.captcha"/> <%namespace name="json" module="json"/>

% if update.alias: ${update.alias} % else: ${update.get_title(', ', 2, ", …") | n}
${ "(+ " + str(len(update.builds) - 2) + " more)" if len(update.builds) > 2 else "" }
% endif

% if update.alias: %endif % if update.release: % endif % if update.autokarma is True: % elif update.autokarma is False: % endif % if update.type: % endif % if update.severity != 'unspecified': % endif % if update.request: % endif % if update.suggest != 'unspecified': % endif % if update.date_testing: % endif % if update.date_stable: % endif % if update.days_to_stable and update.status.description == 'testing': % endif % if update.date_modified: % endif % if update.date_approved: % endif
Submitter ${update.user.name}
Builds % for build in update.builds: % endfor
${build.nvr} % if build.signed: % else: % endif % if can_edit: % if build.override: % else: % endif % endif
Update ID ${update.alias}
Release ${update.release.name}
Karma${self.util.karma2html(update.karma) | n} % if update.stable_karma: stable threshold: ${update.stable_karma} % endif % if update.unstable_karma: unstable threshold: ${update.unstable_karma} % endif
AutopushEnabledDisabled
Type${self.util.type2html(update.type) | n}
Severity${self.util.severity2html(update.severity) | n}
Request${self.util.request2html(update.request) | n} % if not update.signed: % endif
Status${self.util.status2html(update.status) | n}
Suggestion${self.util.suggestion2html(update.suggest) | n}
Submitted ${self.util.age(update.date_submitted)}, ${(update.date_submitted).strftime("%Y-%m-%d %H:%M:%S")} (UTC)
In Testing ${self.util.age(update.date_testing)}, ${(update.date_testing).strftime("%Y-%m-%d %H:%M:%S")} (UTC)
In Stable ${self.util.age(update.date_stable)}, ${(update.date_stable).strftime("%Y-%m-%d %H:%M:%S")} (UTC)
Days to Stable ${str(update.days_to_stable).strip('-')}
Modified ${self.util.age(update.date_modified)}, ${(update.date_modified).strftime("%Y-%m-%d %H:%M:%S")} (UTC)
approved ${self.util.age(update.date_approved)}, ${(update.date_approved).strftime("%Y-%m-%d %H:%M:%S")} (UTC)

Automated Test Results

% if update.locked and update.date_locked: % endif % if can_edit: % if not update.locked:
% if not update.pushed: Edit % if update.request is None: % if update.status.description != 'testing': Push to Testing % endif % if update.status.description not in ['stable', 'obsolete']: Push to Stable % endif % else: Revoke % endif % elif update.pushed and (update.status.description != 'stable' or (update.status.description == 'stable' and 'releng' in [group.name for group in request.user.groups])): Edit % if update.critpath and getattr(update.request, 'description', None) != 'stable': % if update.critpath_approved: Push to Stable % endif % elif update.meets_testing_requirements and getattr(update.request, 'description', None) != 'stable': Push to Stable % elif update.stable_karma not in (0, None) and update.karma >= update.stable_karma and not update.autokarma and getattr(update.request, 'description', None) != 'stable': Push to Stable % endif Unpush % endif
% endif
% endif % if update.critpath: % endif % if update.notes:

Notes about this update:

${self.util.markup(update.notes) | n}
% endif % if update.bugs:

Related Bugs ${len(update.bugs)}

% for bug in update.bugs: % endfor
${self.util.karma2html(update.get_bug_karma(bug)) | n} ${self.util.bug_link(bug) | n}
% endif % if update.test_cases:

Test Cases ${len(update.test_cases)}

% for test in update.full_test_cases: % endfor
${self.util.karma2html(update.get_testcase_karma(test)) | n} ${self.util.testcase_link(test) | n}
% endif

Comments ${len(update.comments)} RSS

% if not request.user:
% endif

Comment fields support Fedora-Flavored Markdown.

${self.fragments.markdown_help_modal()}

Preview

% if not request.user and request.registry.settings.get('captcha.secret', None): <% captcha_key, captcha_url = captcha.generate_captcha(request) %>
% endif
% for bug in update.bugs: % endfor % for test in update.full_test_cases: % endfor % if update.critpath: % endif
Feedback Guidelines
${self.util.bug_link(bug) | n}
${self.util.testcase_link(test) | n}
Does the system's basic functionality continue to work after this update?
Is the update generally functional?