webapp: jinja 2.8 doesn't support dotted assignments
authorHelmut Grohne <helmut@subdivi.de>
Tue, 5 Mar 2019 20:27:03 +0000 (21:27 +0100)
committerHelmut Grohne <helmut@subdivi.de>
Tue, 5 Mar 2019 20:27:03 +0000 (21:27 +0100)
webapp.py

index 128b816..f45c28e 100644 (file)
--- a/webapp.py
+++ b/webapp.py
@@ -30,12 +30,8 @@ src_template = """<!DOCTYPE html>
     <th>state</th>
     <th>architectures</th>
    </tr>
-   {%- set bootstrapdn = namespace(show=False) -%}
    {%- set okarchs = depresult.pop(None, None) -%}
    {%- for reason, archs in depresult.items()|sort -%}
-    {%- if not reason.startswith("skew ") -%}
-     {%- set bootstrapdn.show = True -%}
-    {%- endif -%}
     <tr>
      <td>{{ reason|e }}</td>
      <td>{{ archs|arch_format }}</td>
@@ -50,7 +46,7 @@ src_template = """<!DOCTYPE html>
   </table>
   <h5>See also</h5>
   <ul>
-   {%- if bootstrapdn.show -%}
+   {%- if show_bootstrapdn -%}
     <li>
      <a href="https://bootstrap.debian.net/cross_all/{{ sourcepackage|e }}.html">bootstrap.debian.net</a>
     </li>
@@ -146,6 +142,9 @@ def show_source(source):
             SELECT version, architecture, success, starttime, filename
                 FROM builds WHERE source = :source;""")
         context["builds"] = list(conn.execute(query, source=source))
+        context["show_bootstrapdn"] = \
+                any(reason and not reason.startswith("skew ")
+                    for reason in context["depresult"].keys())
     return flask.render_template_string(src_template, **context)
 
 @app.route("/build/<path:filename>")