[LNT] r235959 - Fixup how LNT handles dates and times in the UI

James Molloy james at jamesmolloy.co.uk
Mon Jun 1 07:30:18 PDT 2015


Hi Chris,

It looks like you made a paste-o in this commit:

-        <a href="{{v4_url_for('v4_run', id=run.id, compare_to=r.id)}}">{{
r.start_time}}</a>
+        <a href="{{v4_url_for('v4_run', id=run.id, compare_to=r.id)}}"><span
class="utctime">{{ run.start_time.isoformat() }}</span></a>

The last line should read "r.start_time.isoformat()". This is causing all
comparison runs to display the same label! Is it OK if I push the trivial
fix?

Cheers,

James

On Tue, 28 Apr 2015 at 02:30 Chris Matthews <cmatthews5 at apple.com> wrote:

> Author: cmatthews
> Date: Mon Apr 27 20:24:10 2015
> New Revision: 235959
>
> URL: http://llvm.org/viewvc/llvm-project?rev=235959&view=rev
> Log:
> Fixup how LNT handles dates and times in the UI
>
> LNT has always confused people by showing dates and times in UTC, but
> without adding the UTC prefix on the end of the string.  In this commit,
> make the server pass all dates as UTC ISO 8601 date time strings. In the
> browser convert these to the user's time zone and locale. Also, in
> recent results locations use relative times, with a tooltip for the full
> time string.
>
> Added:
>     lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/
>     lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/MIT-LICENSE.txt
>
> lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/jquery-dateFormat.min.js
>     lnt/trunk/lnt/server/ui/static/timedate.js
> Modified:
>     lnt/trunk/lnt/server/ui/filters.py
>     lnt/trunk/lnt/server/ui/templates/layout.html
>     lnt/trunk/lnt/server/ui/templates/reporting/runs.html
>     lnt/trunk/lnt/server/ui/templates/v4_machine.html
>     lnt/trunk/lnt/server/ui/templates/v4_order.html
>     lnt/trunk/lnt/server/ui/templates/v4_recent_activity.html
>     lnt/trunk/lnt/server/ui/templates/v4_run.html
>
> Modified: lnt/trunk/lnt/server/ui/filters.py
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/filters.py?rev=235959&r1=235958&r2=235959&view=diff
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/filters.py (original)
> +++ lnt/trunk/lnt/server/ui/filters.py Mon Apr 27 20:24:10 2015
> @@ -10,6 +10,11 @@ def filter_asutctime(time):
>      ts = datetime.datetime.utcfromtimestamp(time)
>      return ts.strftime('%Y-%m-%d %H:%M:%S UTC')
>
> +def filter_asisotime(time):
> +    ts = datetime.datetime.utcfromtimestamp(time)
> +    return ts.isoformat()
> +
> +
>  def filter_aspctcell(value, class_=None, style=None, attributes=None,
> *args, **kwargs):
>      cell = util.PctCell(value, *args, **kwargs)
>      return cell.render(class_, style, attributes)
>
> Added:
> lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/MIT-LICENSE.txt
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/MIT-LICENSE.txt?rev=235959&view=auto
>
> ==============================================================================
> ---
> lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/MIT-LICENSE.txt
> (added)
> +++
> lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/MIT-LICENSE.txt Mon
> Apr 27 20:24:10 2015
> @@ -0,0 +1,20 @@
> +Copyright (c) 2009 Pablo Cantero, http://pablocantero.com/
> +
> +Permission is hereby granted, free of charge, to any person obtaining
> +a copy of this software and associated documentation files (the
> +"Software"), to deal in the Software without restriction, including
> +without limitation the rights to use, copy, modify, merge, publish,
> +distribute, sublicense, and/or sell copies of the Software, and to
> +permit persons to whom the Software is furnished to do so, subject to
> +the following conditions:
> +
> +The above copyright notice and this permission notice shall be
> +included in all copies or substantial portions of the Software.
> +
> +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
> +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
> +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
> +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
> +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
> +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
>
> Added:
> lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/jquery-dateFormat.min.js
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/jquery-dateFormat.min.js?rev=235959&view=auto
>
> ==============================================================================
> ---
> lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/jquery-dateFormat.min.js
> (added)
> +++
> lnt/trunk/lnt/server/ui/static/jquery/jquery.dateFormat/jquery-dateFormat.min.js
> Mon Apr 27 20:24:10 2015
> @@ -0,0 +1,2 @@
> +/*! jquery-dateFormat 05-10-2014 */
> +var DateFormat={};!function(a){var
> b=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],c=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],d=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],e=["January","February","March","April","May","June","July","August","September","October","November","December"],f={Jan:"01",Feb:"02",Mar:"03",Apr:"04",May:"05",Jun:"06",Jul:"07",Aug:"08",Sep:"09",Oct:"10",Nov:"11",Dec:"12"},g=/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.?\d{0,3}[Z\-+]?(\d{2}:?\d{2})?/;a.format=function(){function
> a(a){return b[parseInt(a,10)]||a}function h(a){return
> c[parseInt(a,10)]||a}function i(a){var b=parseInt(a,10)-1;return
> d[b]||a}function j(a){var b=parseInt(a,10)-1;return e[b]||a}function
> k(a){return f[a]||a}function l(a){var
> b,c,d,e,f,g=a,h="";return-1!==g.indexOf(".")&&(e=g.split("."),g=e[0],h=e[1]),f=g.split(":"),3===f.length?(b=f[0],c=f[1],d=f[2].replace(/\s.+/,"").replace(/[a-z]/gi,""),g=g.replace(/\s.+/,"").replace(/[a-!
>  z]/gi,"")
>  ,{time:g,hour:b,minute:c,second:d,millis:h}):{time:"",hour:"",minute:"",second:"",millis:""}}function
> m(a,b){for(var c=b-String(a).length,d=0;c>d;d++)a="0"+a;return
> a}return{parseDate:function(a){var
> b={date:null,year:null,month:null,dayOfMonth:null,dayOfWeek:null,time:null};if("number"==typeof
> a)return this.parseDate(new Date(a));if("function"==typeof
> a.getFullYear)b.year=String(a.getFullYear()),b.month=String(a.getMonth()+1),b.dayOfMonth=String(a.getDate()),b.time=l(a.toTimeString()+"."+a.getMilliseconds());else
> if(-1!=a.search(g))values=a.split(/[T\+-]/),b.year=values[0],b.month=values[1],b.dayOfMonth=values[2],b.time=l(values[3].split(".")[0]);else
> switch(values=a.split("
> "),6===values.length&&isNaN(values[5])&&(values[values.length]="()"),values.length){case
> 6:b.year=values[5],b.month=k(values[1]),b.dayOfMonth=values[2],b.time=l(values[3]);break;case
> 2:subValues=values[0].split("-"),b.year=subValues[0],b.month=subValues[1],b.dayOfMonth=subValues[2],b.time=l(values[1]);!
>  break;cas
>  e 7:case 9:case
> 10:b.year=values[3],b.month=k(values[1]),b.dayOfMonth=values[2],b.time=l(values[4]);break;case
> 1:subValues=values[0].split(""),b.year=subValues[0]+subValues[1]+subValues[2]+subValues[3],b.month=subValues[5]+subValues[6],b.dayOfMonth=subValues[8]+subValues[9],b.time=l(subValues[13]+subValues[14]+subValues[15]+subValues[16]+subValues[17]+subValues[18]+subValues[19]+subValues[20]);break;default:return
> null}return b.date=new
> Date(b.year,b.month-1,b.dayOfMonth),b.dayOfWeek=String(b.date.getDay()),b},date:function(b,c){try{var
> d=this.parseDate(b);if(null===d)return b;for(var
> e=(d.date,d.year),f=d.month,g=d.dayOfMonth,k=d.dayOfWeek,l=d.time,n="",o="",p="",q=!1,r=0;r<c.length;r++){var
> s=c.charAt(r),t=c.charAt(r+1);if(q)"'"==s?(o+=""===n?"'":n,n="",q=!1):n+=s;else
> switch(n+=s,p="",n){case"ddd":o+=a(k),n="";break;case"dd":if("d"===t)break;o+=m(g,2),n="";break;case"d":if("d"===t)break;o+=parseInt(g,10),n="";break;case"D":g=1==g||21==g||31==g?parseInt(g,10)+"st":2==g||2!
>  2==g?pars
>
>  eInt(g,10)+"nd":3==g||23==g?parseInt(g,10)+"rd":parseInt(g,10)+"th",o+=g,n="";break;case"MMMM":o+=j(f),n="";break;case"MMM":if("M"===t)break;o+=i(f),n="";break;case"MM":if("M"===t)break;o+=m(f,2),n="";break;case"M":if("M"===t)break;o+=parseInt(f,10),n="";break;case"y":case"yyy":if("y"===t)break;o+=n,n="";break;case"yy":if("y"===t)break;o+=String(e).slice(-2),n="";break;case"yyyy":o+=e,n="";break;case"HH":o+=m(l.hour,2),n="";break;case"H":if("H"===t)break;o+=parseInt(l.hour,10),n="";break;case"hh":hour=0===parseInt(l.hour,10)?12:l.hour<13?l.hour:l.hour-12,o+=m(hour,2),n="";break;case"h":if("h"===t)break;hour=0===parseInt(l.hour,10)?12:l.hour<13?l.hour:l.hour-12,o+=parseInt(hour,10),n="";break;case"mm":o+=m(l.minute,2),n="";break;case"m":if("m"===t)break;o+=l.minute,n="";break;case"ss":o+=m(l.second.substring(0,2),2),n="";break;case"s":if("s"===t)break;o+=l.second,n="";break;case"S":case"SS":if("S"===t)break;o+=n,n="";break;case"SSS":o+=l.millis.substring(0,3),n="";break;case!
>  "a":o+=l.
>  hour>=12?"PM":"AM",n="";break;case"p":o+=l.hour>=12?"p.m.":"a.m.",n="";break;case"E":o+=h(k),n="";break;case"'":n="",q=!0;break;default:o+=s,n=""}}return
> o+=p}catch(u){return
> console&&console.log&&console.log(u),b}},prettyDate:function(a){var
> b,c,d;return("string"==typeof a||"number"==typeof a)&&(b=new
> Date(a)),"object"==typeof a&&(b=new Date(a.toString())),c=((new
> Date).getTime()-b.getTime())/1e3,d=Math.floor(c/86400),isNaN(d)||0>d?void
> 0:60>c?"just now":120>c?"1 minute ago":3600>c?Math.floor(c/60)+" minutes
> ago":7200>c?"1 hour ago":86400>c?Math.floor(c/3600)+" hours
> ago":1===d?"Yesterday":7>d?d+" days ago":31>d?Math.ceil(d/7)+" weeks
> ago":d>=31?"more than 5 weeks ago":void
> 0},toBrowserTimeZone:function(a,b){return this.date(new
> Date(a),b||"MM/dd/yyyy
> HH:mm:ss")}}}()}(DateFormat),function(a){a.format=DateFormat.format}(jQuery);
> \ No newline at end of file
>
> Added: lnt/trunk/lnt/server/ui/static/timedate.js
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/static/timedate.js?rev=235959&view=auto
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/static/timedate.js (added)
> +++ lnt/trunk/lnt/server/ui/static/timedate.js Mon Apr 27 20:24:10 2015
> @@ -0,0 +1,25 @@
> +/** Provide date conversions to the utctime and reltime classes.
> +
> +
> +Use JQuery to update the iso times rendered in the templates to browswer
> local
> +time.
> +*/
> +
> +jQuery(function() {
> +    jQuery(".utctime").each(function (idx, elem) {
> +
> jQuery(elem).text(jQuery.format.toBrowserTimeZone(jQuery(elem).text()));
> +    });
> +
> +    jQuery(".reltime").each(function (idx, elem) {
> +        var time_text = jQuery(elem).text();
> +        jQuery(elem).tooltip({'title':
> jQuery.format.toBrowserTimeZone(time_text),
> +                            'delay': { show: 500, hide: 1000 }
> +                                });
> +    });
> +
> +    jQuery(".reltime").each(function (idx, elem) {
> +        jQuery(elem).text(jQuery.format.prettyDate(jQuery(elem).text()));
> +
> +    });
> +
> +});
>
> Modified: lnt/trunk/lnt/server/ui/templates/layout.html
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/templates/layout.html?rev=235959&r1=235958&r2=235959&view=diff
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/templates/layout.html (original)
> +++ lnt/trunk/lnt/server/ui/templates/layout.html Mon Apr 27 20:24:10 2015
> @@ -11,8 +11,14 @@
>                }}" rel="stylesheet" media='screen and (min-width: 750px)'>
>    <script src="{{ url_for('.static',
> filename='jquery/1.7.2/jquery-1.7.2.min.js')
>                 }}"> </script>
> +  <script src="{{ url_for('.static',
> filename='jquery/jquery.dateFormat/jquery-dateFormat.min.js')
> +               }}"> </script>
> +
>    <script src="{{ url_for('.static',
> filename='bootstrap/js/bootstrap.min.js')
>                 }}"></script>
> +   <script src="{{ url_for('.static', filename='timedate.js')
> +                        }}"></script>
> +
>    <meta name="viewport" content="width=device-width, initial-scale=1.0">
>    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
>
> @@ -175,8 +181,8 @@
>        <table class="table">
>          <tr>
>            <td>LNT Version: {{ app.version }}</td>
> -          <td>Server Started: {{ app.start_time|asutctime }}</td>
> -          <td>Generated: {{ request.request_time|asutctime }}</td>
> +          <td>Server Started: <span class="utctime">{{
> app.start_time|asisotime }}</span></td>
> +          <td>Generated: <span class="utctime">{{
> request.request_time|asisotime }}</span></td>
>            <td>Render Time: {{ "%.2fs" % request.elapsed_time() }}</td>
>          </tr>
>        </table>
>
> Modified: lnt/trunk/lnt/server/ui/templates/reporting/runs.html
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/templates/reporting/runs.html?rev=235959&r1=235958&r2=235959&view=diff
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/templates/reporting/runs.html (original)
> +++ lnt/trunk/lnt/server/ui/templates/reporting/runs.html Mon Apr 27
> 20:24:10 2015
> @@ -26,11 +26,11 @@
>           <th style="{{ styles['th'] }}">Current</th>
>           <th style="{{ styles['th'] }}">σ {{ primary_field_suffix
> }}</th>
>           {% if secondary_info %}
> -         <th style="{{ styles['th'] }}">Δ {{ secondary_field_suffix
> }}</th>
> +         <th style="{{ styles['th'] }}">Δ {{ secondary_field_suffix
> }}</th>
>           <th style="{{ styles['th'] }}">σ {{ secondary_field_suffix
> }}</th>
>           {% endif %}
>           </tr>
> -
> +
>           {% for name, cr, test_id in bucket %}
>           <tr>
>             <td style="{{ styles['td'] }}">
> @@ -79,7 +79,7 @@
>      <tr>
>        <td style="{{ styles['td'] }}"><a href="{{ ts_url }}/{{ r.id
> }}">{{ title }}</a></td>
>        <td style="{{ styles['td'] }}"><a href="{{ ts_url }}/order/{{
> r.order.id }}">{{ r.order.llvm_project_revision }}</a></td>
> -      <td style="{{ styles['td'] }}">{{ r.start_time }}</td>
> +      <td style="{{ styles['td'] }}"><span class="utctime">{{
> r.start_time.isoformat() }}</span></td>
>        <td style="{{ styles['td'] }}">{{ r.end_time - r.start_time }}</td>
>      </tr>
>      {% else %}
> @@ -111,7 +111,7 @@
>        {% endif %}
>      </tr>
>    </thead>
> -
> +
>    {% for i, name, num_items, num_items_vs_baseline in num_item_buckets %}
>      {% if num_items or num_items_vs_baseline %}
>        <tr>
> @@ -121,9 +121,9 @@
>          <td style="{{ styles['td'] }}" align="right">{{
> num_items_vs_baseline }}</td>
>          {% endif %}
>        </tr>
> -    {% endif %}
> +    {% endif %}
>    {% endfor %}
> -
> +
>    <tfoot>
>      <tr>
>        <td style="{{ styles['td'] }}"><b>Total Tests</b></td>
> @@ -167,4 +167,3 @@
>  </body>
>  </html>
>  {% endif %}
> -
>
> Modified: lnt/trunk/lnt/server/ui/templates/v4_machine.html
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/templates/v4_machine.html?rev=235959&r1=235958&r2=235959&view=diff
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/templates/v4_machine.html (original)
> +++ lnt/trunk/lnt/server/ui/templates/v4_machine.html Mon Apr 27 20:24:10
> 2015
> @@ -13,7 +13,7 @@
>      <li><a href="#parameters"><i class="icon-chevron-right"></i>
> Parameters</a></li>
>      <li><a href="#submissions"><i class="icon-chevron-right"></i>
> Submissions</a></li>
>    </ul>
> -
> +
>    <h4>Relatives</h4>
>    <ul class="nav nav-list bs-docs-sidenav">
>      {# List all machines with this name. #}
> @@ -75,7 +75,7 @@
>        {% if loop.first %}
>        <td rowspan="{{ runs|length }}" align=right>{{
> order.as_ordered_string() }}</td>
>        {% endif %}
> -      <td>{{ run.start_time }}</td>
> +      <td><span class="utctime">{{ run.start_time.isoformat()
> }}</span></td>
>        <td>{{ run.end_time - run.start_time }}s</td>
>        <td>{{ utils.render_result(run) }}</td>
>      </tr>
>
> Modified: lnt/trunk/lnt/server/ui/templates/v4_order.html
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/templates/v4_order.html?rev=235959&r1=235958&r2=235959&view=diff
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/templates/v4_order.html (original)
> +++ lnt/trunk/lnt/server/ui/templates/v4_order.html Mon Apr 27 20:24:10
> 2015
> @@ -73,11 +73,11 @@
>          <th>Results</th>
>        </tr>
>      </thead>
> -    <tbody>
> +    <tbody>
>        {# Show the active submissions. #}
>        {% for r in ts.query(ts.Run).filter_by(order_id = order.id) %}
>        <tr>
> -        <td>{{r.start_time}}</td>
> +        <td><span class="utctime">{{ r.start_time.isoformat()
> }}</span></td>
>          <td>{{r.end_time - r.start_time}}</td>
>          <td>{{ utils.render_machine(r.machine) }}</td>
>          <td>{{ utils.render_result(r) }}</td>
>
> Modified: lnt/trunk/lnt/server/ui/templates/v4_recent_activity.html
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/templates/v4_recent_activity.html?rev=235959&r1=235958&r2=235959&view=diff
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/templates/v4_recent_activity.html (original)
> +++ lnt/trunk/lnt/server/ui/templates/v4_recent_activity.html Mon Apr 27
> 20:24:10 2015
> @@ -5,6 +5,8 @@
>  {% set components = [(testsuite_name, v4_url_for("v4_recent_activity"))]
> %}
>  {% block title %}Recent Activity{% endblock %}
>
> +
> +
>  {% block sidebar %}
>    <ul class="nav nav-list bs-docs-sidenav">
>        <li><a href="#machines"><i class="icon-chevron-right"></i> Active
> Machines</a></li>
> @@ -29,31 +31,31 @@
>        {% for machine_name,r in active_machines|dictsort %}
>        <tr>
>          <td>{{ utils.render_machine(r.machine) }}</td>
> -        <td>{{ r.start_time }}</td>
> +        <td><span class="reltime">{{r.start_time.isoformat()}}</span></td>
>          <td>{{ utils.render_result(r) }}</td>
>        </tr>
>        {% endfor %}
>      </tbody>
>    </table>
> -
> +
>    <section id="submissions" />
>    <h3>Recent Submissions</h3>
>    <table class="table table-striped table-hover table-condensed">
>      <thead>
>      <tr>
>        <th>Run Order</th>
> -      <th>Start Time</th>
> +      <th>Started</th>
>        <th>Duration</th>
>        <th>Machine</th>
>        <th>Results</th>
>      </tr>
>      </thead>
> -    <tbody>
> +    <tbody>
>        {# Show the active submissions. #}
>        {% for r,run_order in active_submissions %}
>        <tr>
>          <td><a href="{{v4_url_for('v4_order', id=r.order.id
> )}}">{{run_order}}</a></td></td>
> -        <td>{{ r.start_time }}</td>
> +        <td><span class="reltime" data-toggle="tooltip"
> title="{{r.start_time}}">{{ r.start_time.isoformat() }}</span></td>
>          <td>{{ r.end_time - r.start_time }}</td>
>          <td>{{ utils.render_machine(r.machine) }}</td>
>          <td>{{ utils.render_result(r) }}</td>
>
> Modified: lnt/trunk/lnt/server/ui/templates/v4_run.html
> URL:
> http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/server/ui/templates/v4_run.html?rev=235959&r1=235958&r2=235959&view=diff
>
> ==============================================================================
> --- lnt/trunk/lnt/server/ui/templates/v4_run.html (original)
> +++ lnt/trunk/lnt/server/ui/templates/v4_run.html Mon Apr 27 20:24:10 2015
> @@ -29,12 +29,12 @@
>    {% set test_status = cr.get_test_status() %}
>    {% set value_status = cr.get_value_status(ignore_small=not
> options.show_small_diff) %}
>    {% set run_cell_value = "-" if cr.current is none else "%.4f" %
> cr.current %}
> -
> +
>    {% if options.show_previous %}
>      {% set prev_cell_value = "-" if cr.previous is none else "%.4f" %
> cr.previous %}
>      <td>{{prev_cell_value}}</td>
>    {% endif %}
> -
> +
>    {% set cell_color = none %}
>    {% if test_status == analysis.REGRESSED %}
>      {% set cell_color = (233,128,128) %}
> @@ -43,13 +43,13 @@
>    {% elif test_status == analysis.UNCHANGED_FAIL %}
>      {% set cell_color = (255,195,67) %}
>    {% endif %}
> -
> +
>    {% if cell_color %}
>      <td style="background-color:{{ '#%02x%02x%02x' % cell_color }}">{{
> run_cell_value }}</td>
>    {% else %}
>      <td>{{run_cell_value}}</td>
>    {% endif %}
> -
> +
>    {% if (options.show_all or
>           value_status == analysis.REGRESSED or
>           value_status == analysis.IMPROVED) %}
> @@ -57,7 +57,7 @@
>    {% else %}
>      <td>-</td>
>    {% endif %}
> -
> +
>    {% if options.show_delta %}
>      <td>{{ "-" if cr.delta is none else "%.4f" % cr.delta }}</td>
>    {% endif %}
> @@ -77,7 +77,7 @@
>        ]
>      </td>
>    {% endif %}
> -
> +
>    {% if options.show_sample_counts %}
>      <td>{{cr.get_samples()|length}}</td>
>    {% endif %}
> @@ -101,7 +101,7 @@
>    {% for r in neighboring_runs %}
>      <li>
>        {{ "<b>"|safe if r.id == run.id else "" }}
> -      <a href="{{v4_url_for('v4_run', id=r.id)}}">{{ r.start_time }}</a>
> +      <a href="{{v4_url_for('v4_run', id=r.id)}}"><span
> class="utctime">{{ r.start_time.isoformat() }}</span></a>
>        {{ "</b>"|safe if r.id == run.id else "" }}
>    {% endfor %}
>    </ul>
> @@ -112,7 +112,7 @@
>      {% for r in comparison_neighboring_runs %}
>        <li>
>          {{ "<b>"|safe if compare_to and r.id == compare_to.id else "" }}
> -        <a href="{{v4_url_for('v4_run', id=run.id, compare_to=r.id)}}">{{
> r.start_time}}</a>
> +        <a href="{{v4_url_for('v4_run', id=run.id, compare_to=r.id)}}"><span
> class="utctime">{{ run.start_time.isoformat() }}</span></a>
>          {{ "</b>"|safe if compare_to and r.id == compare_to.id else "" }}
>      {% endfor %}
>      </ul>
> @@ -274,7 +274,7 @@
>          {% if baseline %}
>            <input type="hidden" name="baseline" value="{{baseline.id}}">
>          {% endif %}
> -
> +
>          <input type="submit" name="submit" value="Update">
>        </td>
>      </tr>
> @@ -290,7 +290,7 @@
>
>    {% set graph_base=v4_url_for('v4_graph', highlight_run=run.id) %}
>    <form method="GET" action="{{ graph_base }}">
> -
> +
>      {# Report one table for each primary field. #}
>      {% for field in primary_fields %}
>        <section id="{{ field.name }}" />
> @@ -310,7 +310,7 @@
>              {% if options.show_sample_counts %}<th>N</th>{% endif %}
>            </tr>
>          </thead>
> -        <tbody>
> +        <tbody>
>            {% set tests = [] %}
>            {% set (runs, compare_runs) =
> request_info.sri.get_sliding_runs(run, compare_to,
> request_info.num_comparison_runs) %}
>            {% for test_name,test_id in test_info %}
> @@ -342,7 +342,7 @@
>      {% endfor %}
>      <p><input type="submit" value="Graph">
>    </form>
> -
> +
>    {% if options.show_data_table %}
>      <h3>Test Data</h3>
>      <table class="table table-striped table-condensed table-hover">
> @@ -375,5 +375,5 @@
>        </tbody>
>      </table>
>    {% endif %}
> -
> +
>  {% endblock %}
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150601/f413706f/attachment.html>


More information about the llvm-commits mailing list