Myoldmopar/decent_ci

View on GitHub
docs/PotentialBuild.html

Summary

Maintainability
Test Coverage
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
  Class: PotentialBuild
  
    &mdash; Documentation by YARD 0.9.19
  
</title>

  <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />

  <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />

<script type="text/javascript" charset="utf-8">
  pathId = "PotentialBuild";
  relpath = '';
</script>


  <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>

  <script type="text/javascript" charset="utf-8" src="js/app.js"></script>


  </head>
  <body>
    <div class="nav_wrap">
      <iframe id="nav" src="class_list.html?1"></iframe>
      <div id="resizer"></div>
    </div>

    <div id="main" tabindex="-1">
      <div id="header">
        <div id="menu">
  
    <a href="_index.html">Index (P)</a> &raquo;
    
    
    <span class="title">PotentialBuild</span>
  
</div>

        <div id="search">
  
    <a class="full_list_link" id="class_list_link"
        href="class_list.html">

        <svg width="24" height="24">
          <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
          <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
          <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
        </svg>
    </a>
  
</div>
        <div class="clear"></div>
      </div>

      <div id="content"><h1>Class: PotentialBuild
  
  
  
</h1>
<div class="box_info">
  
  <dl>
    <dt>Inherits:</dt>
    <dd>
      <span class="inheritName">Object</span>
      
        <ul class="fullTree">
          <li>Object</li>
          
            <li class="next">PotentialBuild</li>
          
        </ul>
        <a href="#" class="inheritanceTree">show all</a>
      
    </dd>
  </dl>
  

  
  
  
  
  <dl>
      <dt>Includes:</dt>
      <dd><span class='object_link'><a href="CMake.html" title="CMake (module)">CMake</a></span>, <span class='object_link'><a href="Configuration.html" title="Configuration (module)">Configuration</a></span>, <span class='object_link'><a href="Lcov.html" title="Lcov (module)">Lcov</a></span>, <span class='object_link'><a href="ResultsProcessor.html" title="ResultsProcessor (module)">ResultsProcessor</a></span>, <span class='object_link'><a href="Runners.html" title="Runners (module)">Runners</a></span></dd>
  </dl>
  
  

  

  
  <dl>
    <dt>Defined in:</dt>
    <dd>lib/potentialbuild.rb</dd>
  </dl>
  
</div>

<h2>Overview</h2><div class="docstring">
  <div class="discussion">
    
<p>Contains the logic flow for executing builds and parsing results</p>


  </div>
</div>
<div class="tags">
  

</div>



  <h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
  <ul class="summary">
    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#branch_name-instance_method" title="#branch_name (instance method)">#<strong>branch_name</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
    
      <span class="note title readonly">readonly</span>
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute branch_name.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#commit_sha-instance_method" title="#commit_sha (instance method)">#<strong>commit_sha</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
    
      <span class="note title readonly">readonly</span>
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute commit_sha.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#failure-instance_method" title="#failure (instance method)">#<strong>failure</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute failure.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#repository-instance_method" title="#repository (instance method)">#<strong>repository</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
    
      <span class="note title readonly">readonly</span>
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute repository.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#tag_name-instance_method" title="#tag_name (instance method)">#<strong>tag_name</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
    
      <span class="note title readonly">readonly</span>
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute tag_name.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#test_run-instance_method" title="#test_run (instance method)">#<strong>test_run</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute test_run.</p>
</div></span>
  
</li>

    
  </ul>




  
    <h2>
      Instance Method Summary
      <small><a href="#" class="summary_toggle">collapse</a></small>
    </h2>

    <ul class="summary">
      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#add_dashes-instance_method" title="#add_dashes (instance method)">#<strong>add_dashes</strong>(str)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#build_base_name-instance_method" title="#build_base_name (instance method)">#<strong>build_base_name</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#checkout-instance_method" title="#checkout (instance method)">#<strong>checkout</strong>(src_dir)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#clone_regression_repository-instance_method" title="#clone_regression_repository (instance method)">#<strong>clone_regression_repository</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#collect_file_sizes-instance_method" title="#collect_file_sizes (instance method)">#<strong>collect_file_sizes</strong>(build_dir: File.absolute_path(this_build_dir))  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#collect_perf_results-instance_method" title="#collect_perf_results (instance method)">#<strong>collect_perf_results</strong>(build_dir: File.absolute_path(this_build_dir))  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#collect_valgrind_counters_results-instance_method" title="#collect_valgrind_counters_results (instance method)">#<strong>collect_valgrind_counters_results</strong>(build_dir: File.absolute_path(this_build_dir))  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#compilers-instance_method" title="#compilers (instance method)">#<strong>compilers</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#configuration-instance_method" title="#configuration (instance method)">#<strong>configuration</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#descriptive_string-instance_method" title="#descriptive_string (instance method)">#<strong>descriptive_string</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#device_id-instance_method" title="#device_id (instance method)">#<strong>device_id</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#device_tag-instance_method" title="#device_tag (instance method)">#<strong>device_tag</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#do_build-instance_method" title="#do_build (instance method)">#<strong>do_build</strong>(compiler, regression_baseline, is_release = false)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#do_coverage-instance_method" title="#do_coverage (instance method)">#<strong>do_coverage</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#do_test-instance_method" title="#do_test (instance method)">#<strong>do_test</strong>(compiler, regression_baseline)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#do_upload-instance_method" title="#do_upload (instance method)">#<strong>do_upload</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#get_full_build_name-instance_method" title="#get_full_build_name (instance method)">#<strong>get_full_build_name</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#get_initials-instance_method" title="#get_initials (instance method)">#<strong>get_initials</strong>(str)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#get_short_form-instance_method" title="#get_short_form (instance method)">#<strong>get_short_form</strong>(str)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(client, token, repository, tag_name, commit_sha, branch_name, author, release_url, release_assets, pull_id, pr_base_repository, pr_base_ref)  &#x21d2; PotentialBuild </a>
    

    
  </span>
  
  
    <span class="note title constructor">constructor</span>
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>rubocop:disable Metrics/ParameterLists.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#needs_regression_test-instance_method" title="#needs_regression_test (instance method)">#<strong>needs_regression_test</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#needs_run-instance_method" title="#needs_run (instance method)">#<strong>needs_run</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#next_build-instance_method" title="#next_build (instance method)">#<strong>next_build</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#parse_callgrind-instance_method" title="#parse_callgrind (instance method)">#<strong>parse_callgrind</strong>(build_dir, file)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#parse_file_sizes-instance_method" title="#parse_file_sizes (instance method)">#<strong>parse_file_sizes</strong>(file)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#parse_perf-instance_method" title="#parse_perf (instance method)">#<strong>parse_perf</strong>(file)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#post_results-instance_method" title="#post_results (instance method)">#<strong>post_results</strong>(compiler, pending)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#pull_request%3F-instance_method" title="#pull_request? (instance method)">#<strong>pull_request?</strong>  &#x21d2; Boolean </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#release%3F-instance_method" title="#release? (instance method)">#<strong>release?</strong>  &#x21d2; Boolean </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#results_file_name-instance_method" title="#results_file_name (instance method)">#<strong>results_file_name</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#set_as_baseline-instance_method" title="#set_as_baseline (instance method)">#<strong>set_as_baseline</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#short_build_base_name-instance_method" title="#short_build_base_name (instance method)">#<strong>short_build_base_name</strong>(compiler)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#this_branch_folder-instance_method" title="#this_branch_folder (instance method)">#<strong>this_branch_folder</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#this_build_dir-instance_method" title="#this_build_dir (instance method)">#<strong>this_build_dir</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#this_regression_dir-instance_method" title="#this_regression_dir (instance method)">#<strong>this_regression_dir</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#this_src_dir-instance_method" title="#this_src_dir (instance method)">#<strong>this_src_dir</strong>  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#try_to_repost_asset-instance_method" title="#try_to_repost_asset (instance method)">#<strong>try_to_repost_asset</strong>(response, asset_name)  &#x21d2; Object </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
    </ul>
  


  
  
  
  
  
  
  
  
  <h3 class="inherited">Methods included from <span class='object_link'><a href="Runners.html" title="Runners (module)">Runners</a></span></h3>
  <p class="inherited"><span class='object_link'><a href="Runners.html#monitor_thread_state-instance_method" title="Runners#monitor_thread_state (method)">#monitor_thread_state</a></span>, <span class='object_link'><a href="Runners.html#read_state_singular-instance_method" title="Runners#read_state_singular (method)">#read_state_singular</a></span>, <span class='object_link'><a href="Runners.html#run_scripts-instance_method" title="Runners#run_scripts (method)">#run_scripts</a></span>, <span class='object_link'><a href="Runners.html#run_single_script-instance_method" title="Runners#run_single_script (method)">#run_single_script</a></span>, <span class='object_link'><a href="Runners.html#run_with_timeout-instance_method" title="Runners#run_with_timeout (method)">#run_with_timeout</a></span></p>

  
  
  
  
  
  
  
  
  <h3 class="inherited">Methods included from <span class='object_link'><a href="Lcov.html" title="Lcov (module)">Lcov</a></span></h3>
  <p class="inherited"><span class='object_link'><a href="Lcov.html#generate_base_command_line-instance_method" title="Lcov#generate_base_command_line (method)">#generate_base_command_line</a></span>, <span class='object_link'><a href="Lcov.html#generate_filter_command_line-instance_method" title="Lcov#generate_filter_command_line (method)">#generate_filter_command_line</a></span>, <span class='object_link'><a href="Lcov.html#generate_html_command_line-instance_method" title="Lcov#generate_html_command_line (method)">#generate_html_command_line</a></span>, <span class='object_link'><a href="Lcov.html#lcov-instance_method" title="Lcov#lcov (method)">#lcov</a></span></p>

  
  
  
  
  
  
  
  
  <h3 class="inherited">Methods included from <span class='object_link'><a href="ResultsProcessor.html" title="ResultsProcessor (module)">ResultsProcessor</a></span></h3>
  <p class="inherited"><span class='object_link'><a href="ResultsProcessor.html#get_win32_filename-instance_method" title="ResultsProcessor#get_win32_filename (method)">#get_win32_filename</a></span>, <span class='object_link'><a href="ResultsProcessor.html#match_type_to_possible_fortran-instance_method" title="ResultsProcessor#match_type_to_possible_fortran (method)">#match_type_to_possible_fortran</a></span>, <span class='object_link'><a href="ResultsProcessor.html#parse_error_messages-instance_method" title="ResultsProcessor#parse_error_messages (method)">#parse_error_messages</a></span>, <span class='object_link'><a href="ResultsProcessor.html#parse_gcc_line-instance_method" title="ResultsProcessor#parse_gcc_line (method)">#parse_gcc_line</a></span>, <span class='object_link'><a href="ResultsProcessor.html#parse_generic_line-instance_method" title="ResultsProcessor#parse_generic_line (method)">#parse_generic_line</a></span>, <span class='object_link'><a href="ResultsProcessor.html#parse_msvc_line-instance_method" title="ResultsProcessor#parse_msvc_line (method)">#parse_msvc_line</a></span>, <span class='object_link'><a href="ResultsProcessor.html#parse_python_or_latex_line-instance_method" title="ResultsProcessor#parse_python_or_latex_line (method)">#parse_python_or_latex_line</a></span>, <span class='object_link'><a href="ResultsProcessor.html#process_cmake_results-instance_method" title="ResultsProcessor#process_cmake_results (method)">#process_cmake_results</a></span>, <span class='object_link'><a href="ResultsProcessor.html#process_ctest_results-instance_method" title="ResultsProcessor#process_ctest_results (method)">#process_ctest_results</a></span>, <span class='object_link'><a href="ResultsProcessor.html#process_gcc_results-instance_method" title="ResultsProcessor#process_gcc_results (method)">#process_gcc_results</a></span>, <span class='object_link'><a href="ResultsProcessor.html#process_lcov_results-instance_method" title="ResultsProcessor#process_lcov_results (method)">#process_lcov_results</a></span>, <span class='object_link'><a href="ResultsProcessor.html#process_msvc_results-instance_method" title="ResultsProcessor#process_msvc_results (method)">#process_msvc_results</a></span>, <span class='object_link'><a href="ResultsProcessor.html#process_python_results-instance_method" title="ResultsProcessor#process_python_results (method)">#process_python_results</a></span>, <span class='object_link'><a href="ResultsProcessor.html#recover_file_case-instance_method" title="ResultsProcessor#recover_file_case (method)">#recover_file_case</a></span>, <span class='object_link'><a href="ResultsProcessor.html#relative_path-instance_method" title="ResultsProcessor#relative_path (method)">#relative_path</a></span></p>

  
  
  
  
  
  
  
  
  <h3 class="inherited">Methods included from <span class='object_link'><a href="Configuration.html" title="Configuration (module)">Configuration</a></span></h3>
  <p class="inherited"><span class='object_link'><a href="Configuration.html#_setup_cc_and_cxx-instance_method" title="Configuration#_setup_cc_and_cxx (method)">#_setup_cc_and_cxx</a></span>, <span class='object_link'><a href="Configuration.html#establish_base_configuration-instance_method" title="Configuration#establish_base_configuration (method)">#establish_base_configuration</a></span>, <span class='object_link'><a href="Configuration.html#establish_os_characteristics-instance_method" title="Configuration#establish_os_characteristics (method)">#establish_os_characteristics</a></span>, <span class='object_link'><a href="Configuration.html#establish_windows_characteristics-instance_method" title="Configuration#establish_windows_characteristics (method)">#establish_windows_characteristics</a></span>, <span class='object_link'><a href="Configuration.html#find_valid_yaml_files-instance_method" title="Configuration#find_valid_yaml_files (method)">#find_valid_yaml_files</a></span>, <span class='object_link'><a href="Configuration.html#get_all_yaml_names-instance_method" title="Configuration#get_all_yaml_names (method)">#get_all_yaml_names</a></span>, <span class='object_link'><a href="Configuration.html#load_configuration-instance_method" title="Configuration#load_configuration (method)">#load_configuration</a></span>, <span class='object_link'><a href="Configuration.html#load_yaml-instance_method" title="Configuration#load_yaml (method)">#load_yaml</a></span>, <span class='object_link'><a href="Configuration.html#setup_compiler_architecture-instance_method" title="Configuration#setup_compiler_architecture (method)">#setup_compiler_architecture</a></span>, <span class='object_link'><a href="Configuration.html#setup_compiler_build_generator-instance_method" title="Configuration#setup_compiler_build_generator (method)">#setup_compiler_build_generator</a></span>, <span class='object_link'><a href="Configuration.html#setup_compiler_description-instance_method" title="Configuration#setup_compiler_description (method)">#setup_compiler_description</a></span>, <span class='object_link'><a href="Configuration.html#setup_compiler_extra_flags-instance_method" title="Configuration#setup_compiler_extra_flags (method)">#setup_compiler_extra_flags</a></span>, <span class='object_link'><a href="Configuration.html#setup_compiler_num_processors-instance_method" title="Configuration#setup_compiler_num_processors (method)">#setup_compiler_num_processors</a></span>, <span class='object_link'><a href="Configuration.html#setup_compiler_target_arch-instance_method" title="Configuration#setup_compiler_target_arch (method)">#setup_compiler_target_arch</a></span>, <span class='object_link'><a href="Configuration.html#setup_compiler_version-instance_method" title="Configuration#setup_compiler_version (method)">#setup_compiler_version</a></span>, <span class='object_link'><a href="Configuration.html#setup_gcc_style_cc_and_cxx-instance_method" title="Configuration#setup_gcc_style_cc_and_cxx (method)">#setup_gcc_style_cc_and_cxx</a></span>, <span class='object_link'><a href="Configuration.html#setup_single_compiler-instance_method" title="Configuration#setup_single_compiler (method)">#setup_single_compiler</a></span>, <span class='object_link'><a href="Configuration.html#symbolize-instance_method" title="Configuration#symbolize (method)">#symbolize</a></span>, <span class='object_link'><a href="Configuration.html#which-instance_method" title="Configuration#which (method)">#which</a></span></p>

  
  
  
  
  
  
  
  
  <h3 class="inherited">Methods included from <span class='object_link'><a href="CMake.html" title="CMake (module)">CMake</a></span></h3>
  <p class="inherited"><span class='object_link'><a href="CMake.html#cmake_build-instance_method" title="CMake#cmake_build (method)">#cmake_build</a></span>, <span class='object_link'><a href="CMake.html#cmake_remove_git_from_path-instance_method" title="CMake#cmake_remove_git_from_path (method)">#cmake_remove_git_from_path</a></span>, <span class='object_link'><a href="CMake.html#cmake_test-instance_method" title="CMake#cmake_test (method)">#cmake_test</a></span></p>
<div id="constructor_details" class="method_details_list">
  <h2>Constructor Details</h2>
  
    <div class="method_details first">
  <h3 class="signature first" id="initialize-instance_method">
  
    #<strong>initialize</strong>(client, token, repository, tag_name, commit_sha, branch_name, author, release_url, release_assets, pull_id, pr_base_repository, pr_base_ref)  &#x21d2; <tt><span class='object_link'><a href="" title="PotentialBuild (class)">PotentialBuild</a></span></tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>rubocop:disable Metrics/ParameterLists</p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 36</span>

<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_client'>client</span><span class='comma'>,</span> <span class='id identifier rubyid_token'>token</span><span class='comma'>,</span> <span class='id identifier rubyid_repository'>repository</span><span class='comma'>,</span> <span class='id identifier rubyid_tag_name'>tag_name</span><span class='comma'>,</span> <span class='id identifier rubyid_commit_sha'>commit_sha</span><span class='comma'>,</span> <span class='id identifier rubyid_branch_name'>branch_name</span><span class='comma'>,</span> <span class='id identifier rubyid_author'>author</span><span class='comma'>,</span> <span class='id identifier rubyid_release_url'>release_url</span><span class='comma'>,</span> <span class='id identifier rubyid_release_assets'>release_assets</span><span class='comma'>,</span> <span class='comment'># rubocop:disable Metrics/ParameterLists
</span>               <span class='id identifier rubyid_pull_id'>pull_id</span><span class='comma'>,</span> <span class='id identifier rubyid_pr_base_repository'>pr_base_repository</span><span class='comma'>,</span> <span class='id identifier rubyid_pr_base_ref'>pr_base_ref</span><span class='rparen'>)</span>
  <span class='ivar'>@client</span> <span class='op'>=</span> <span class='id identifier rubyid_client'>client</span>
  <span class='ivar'>@config</span> <span class='op'>=</span> <span class='id identifier rubyid_load_configuration'>load_configuration</span><span class='lparen'>(</span><span class='id identifier rubyid_repository'>repository</span><span class='comma'>,</span> <span class='lparen'>(</span><span class='id identifier rubyid_tag_name'>tag_name</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>?</span> <span class='id identifier rubyid_commit_sha'>commit_sha</span> <span class='op'>:</span> <span class='id identifier rubyid_tag_name'>tag_name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='op'>!</span><span class='id identifier rubyid_release_url'>release_url</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='rparen'>)</span>
  <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository_name'>repository_name</span> <span class='op'>=</span> <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_repo'>repo</span><span class='lparen'>(</span><span class='id identifier rubyid_repository'>repository</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span> <span class='rbrace'>}</span>
  <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository'>repository</span> <span class='op'>=</span> <span class='id identifier rubyid_repository'>repository</span>
  <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_token'>token</span> <span class='op'>=</span> <span class='id identifier rubyid_token'>token</span>
  <span class='ivar'>@repository</span> <span class='op'>=</span> <span class='id identifier rubyid_repository'>repository</span>
  <span class='ivar'>@tag_name</span> <span class='op'>=</span> <span class='id identifier rubyid_tag_name'>tag_name</span>
  <span class='ivar'>@commit_sha</span> <span class='op'>=</span> <span class='id identifier rubyid_commit_sha'>commit_sha</span>
  <span class='ivar'>@branch_name</span> <span class='op'>=</span> <span class='id identifier rubyid_branch_name'>branch_name</span>
  <span class='ivar'>@release_url</span> <span class='op'>=</span> <span class='id identifier rubyid_release_url'>release_url</span>
  <span class='ivar'>@release_assets</span> <span class='op'>=</span> <span class='id identifier rubyid_release_assets'>release_assets</span>
  <span class='ivar'>@author</span> <span class='op'>=</span> <span class='id identifier rubyid_author'>author</span>

  <span class='ivar'>@buildid</span> <span class='op'>=</span> <span class='ivar'>@tag_name</span> <span class='op'>||</span> <span class='ivar'>@commit_sha</span>
  <span class='ivar'>@refspec</span> <span class='op'>=</span> <span class='ivar'>@tag_name</span> <span class='op'>||</span> <span class='ivar'>@branch_name</span>

  <span class='ivar'>@pull_id</span> <span class='op'>=</span> <span class='id identifier rubyid_pull_id'>pull_id</span>
  <span class='ivar'>@pull_request_base_repository</span> <span class='op'>=</span> <span class='id identifier rubyid_pr_base_repository'>pr_base_repository</span>
  <span class='ivar'>@pull_request_base_ref</span> <span class='op'>=</span> <span class='id identifier rubyid_pr_base_ref'>pr_base_ref</span>

  <span class='ivar'>@short_buildid</span> <span class='op'>=</span> <span class='id identifier rubyid_get_short_form'>get_short_form</span><span class='lparen'>(</span><span class='ivar'>@tag_name</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='ivar'>@commit_sha</span><span class='lbracket'>[</span><span class='int'>0</span><span class='op'>..</span><span class='int'>9</span><span class='rbracket'>]</span>
  <span class='kw'>unless</span> <span class='ivar'>@pull_id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='ivar'>@buildid</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@buildid</span><span class='embexpr_end'>}</span><span class='tstring_content'>-PR</span><span class='embexpr_beg'>#{</span><span class='ivar'>@pull_id</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
    <span class='ivar'>@short_buildid</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@short_buildid</span><span class='embexpr_end'>}</span><span class='tstring_content'>-PR</span><span class='embexpr_beg'>#{</span><span class='ivar'>@pull_id</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
  <span class='kw'>end</span>

  <span class='ivar'>@package_locations</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_results</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_messages</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
  <span class='ivar'>@build_results</span> <span class='op'>=</span> <span class='const'>SortedSet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
  <span class='ivar'>@package_results</span> <span class='op'>=</span> <span class='const'>SortedSet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
  <span class='ivar'>@dateprefix</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@failure</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_run</span> <span class='op'>=</span> <span class='kw'>false</span>
  <span class='ivar'>@build_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@install_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@package_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@coverage_lines</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_total_lines</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_functions</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_total_functions</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_url</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@asset_url</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@acting_as_baseline</span> <span class='op'>=</span> <span class='kw'>false</span>

  <span class='ivar'>@valgrind_counters_results</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@perf_counters_results</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@file_sizes</span> <span class='op'>=</span> <span class='kw'>nil</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
  
</div>

  <div id="instance_attr_details" class="attr_details">
    <h2>Instance Attribute Details</h2>
    
      
      <span id=""></span>
      <div class="method_details first">
  <h3 class="signature first" id="branch_name-instance_method">
  
    #<strong>branch_name</strong>  &#x21d2; <tt>Object</tt>  <span class="extras">(readonly)</span>
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns the value of attribute branch_name</p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


33
34
35</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 33</span>

<span class='kw'>def</span> <span class='id identifier rubyid_branch_name'>branch_name</span>
  <span class='ivar'>@branch_name</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id=""></span>
      <div class="method_details ">
  <h3 class="signature " id="commit_sha-instance_method">
  
    #<strong>commit_sha</strong>  &#x21d2; <tt>Object</tt>  <span class="extras">(readonly)</span>
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns the value of attribute commit_sha</p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


33
34
35</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 33</span>

<span class='kw'>def</span> <span class='id identifier rubyid_commit_sha'>commit_sha</span>
  <span class='ivar'>@commit_sha</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id="failure=-instance_method"></span>
      <div class="method_details ">
  <h3 class="signature " id="failure-instance_method">
  
    #<strong>failure</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns the value of attribute failure</p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


34
35
36</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 34</span>

<span class='kw'>def</span> <span class='id identifier rubyid_failure'>failure</span>
  <span class='ivar'>@failure</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id=""></span>
      <div class="method_details ">
  <h3 class="signature " id="repository-instance_method">
  
    #<strong>repository</strong>  &#x21d2; <tt>Object</tt>  <span class="extras">(readonly)</span>
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns the value of attribute repository</p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


33
34
35</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 33</span>

<span class='kw'>def</span> <span class='id identifier rubyid_repository'>repository</span>
  <span class='ivar'>@repository</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id=""></span>
      <div class="method_details ">
  <h3 class="signature " id="tag_name-instance_method">
  
    #<strong>tag_name</strong>  &#x21d2; <tt>Object</tt>  <span class="extras">(readonly)</span>
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns the value of attribute tag_name</p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


33
34
35</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 33</span>

<span class='kw'>def</span> <span class='id identifier rubyid_tag_name'>tag_name</span>
  <span class='ivar'>@tag_name</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id="test_run=-instance_method"></span>
      <div class="method_details ">
  <h3 class="signature " id="test_run-instance_method">
  
    #<strong>test_run</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns the value of attribute test_run</p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


34
35
36</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 34</span>

<span class='kw'>def</span> <span class='id identifier rubyid_test_run'>test_run</span>
  <span class='ivar'>@test_run</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
  </div>


  <div id="instance_method_details" class="method_details_list">
    <h2>Instance Method Details</h2>

    
      <div class="method_details first">
  <h3 class="signature first" id="add_dashes-instance_method">
  
    #<strong>add_dashes</strong>(str)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


239
240
241</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 239</span>

<span class='kw'>def</span> <span class='id identifier rubyid_add_dashes'>add_dashes</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_str'>str</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>([0-9]{3,})([A-Z])</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>\1-\2</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>([A-Z])([0-9]{3,})</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>\1-\2</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="build_base_name-instance_method">
  
    #<strong>build_base_name</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


120
121
122</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 120</span>

<span class='kw'>def</span> <span class='id identifier rubyid_build_base_name'>build_base_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository_name'>repository_name</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='ivar'>@buildid</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_device_id'>device_id</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="checkout-instance_method">
  
    #<strong>checkout</strong>(src_dir)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 132</span>

<span class='kw'>def</span> <span class='id identifier rubyid_checkout'>checkout</span><span class='lparen'>(</span><span class='id identifier rubyid_src_dir'>src_dir</span><span class='rparen'>)</span>
  <span class='comment'># TODO: update this to be a merge, not just a checkout of the pull request branch
</span>  <span class='const'>FileUtils</span><span class='period'>.</span><span class='id identifier rubyid_mkdir_p'>mkdir_p</span> <span class='id identifier rubyid_src_dir'>src_dir</span>

  <span class='kw'>if</span> <span class='ivar'>@pull_id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Checking out branch \&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@refspec</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_result'>result</span> <span class='op'>=</span> <span class='id identifier rubyid_run_scripts'>run_scripts</span><span class='lparen'>(</span>
      <span class='ivar'>@config</span><span class='comma'>,</span>
      <span class='lbracket'>[</span>
        <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_src_dir'>src_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git init</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
        <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_src_dir'>src_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git pull https://</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_token'>token</span><span class='embexpr_end'>}</span><span class='tstring_content'>@github.com/</span><span class='embexpr_beg'>#{</span><span class='ivar'>@repository</span><span class='embexpr_end'>}</span><span class='tstring_content'> \&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@refspec</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span>
      <span class='rbracket'>]</span>
    <span class='rparen'>)</span>

    <span class='id identifier rubyid_success'>success</span> <span class='op'>=</span> <span class='op'>!</span><span class='ivar'>@commit_sha</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@commit_sha</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_result'>result</span><span class='period'>.</span><span class='id identifier rubyid_zero?'>zero?</span>
    <span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_result'>result</span> <span class='op'>=</span> <span class='id identifier rubyid_run_scripts'>run_scripts</span><span class='lparen'>(</span><span class='ivar'>@config</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_src_dir'>src_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git checkout </span><span class='embexpr_beg'>#{</span><span class='ivar'>@commit_sha</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_success'>success</span>
  <span class='kw'>else</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Checking out PR \&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@pull_id</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_result'>result</span> <span class='op'>=</span> <span class='id identifier rubyid_run_scripts'>run_scripts</span><span class='lparen'>(</span>
      <span class='ivar'>@config</span><span class='comma'>,</span>
      <span class='lbracket'>[</span>
        <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_src_dir'>src_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git init</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
        <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_src_dir'>src_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git pull https://</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_token'>token</span><span class='embexpr_end'>}</span><span class='tstring_content'>@github.com/</span><span class='embexpr_beg'>#{</span><span class='ivar'>@pull_request_base_repository</span><span class='embexpr_end'>}</span><span class='tstring_content'> refs/pull/</span><span class='embexpr_beg'>#{</span><span class='ivar'>@pull_id</span><span class='embexpr_end'>}</span><span class='tstring_content'>/head</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
        <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_src_dir'>src_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git checkout FETCH_HEAD</span><span class='tstring_end'>&quot;</span></span>
      <span class='rbracket'>]</span>
    <span class='rparen'>)</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_result'>result</span><span class='period'>.</span><span class='id identifier rubyid_zero?'>zero?</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="clone_regression_repository-instance_method">
  
    #<strong>clone_regression_repository</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 318</span>

<span class='kw'>def</span> <span class='id identifier rubyid_clone_regression_repository'>clone_regression_repository</span>
  <span class='id identifier rubyid_regression_dir'>regression_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_this_regression_dir'>this_regression_dir</span>
  <span class='const'>FileUtils</span><span class='period'>.</span><span class='id identifier rubyid_mkdir_p'>mkdir_p</span> <span class='id identifier rubyid_regression_dir'>regression_dir</span>
  <span class='kw'>return</span> <span class='kw'>if</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_repository'>regression_repository</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

  <span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_commit_sha'>regression_commit_sha</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_commit_sha'>regression_commit_sha</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_refspec'>refspec</span> <span class='op'>=</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_commit_sha'>regression_commit_sha</span>
  <span class='kw'>elsif</span> <span class='op'>!</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_branch'>regression_branch</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_branch'>regression_branch</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_refspec'>refspec</span> <span class='op'>=</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_branch'>regression_branch</span>
  <span class='kw'>else</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>No regression repository checkout info!?!</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='kw'>return</span>
  <span class='kw'>end</span>
  <span class='id identifier rubyid_run_scripts'>run_scripts</span><span class='lparen'>(</span>
    <span class='ivar'>@config</span><span class='comma'>,</span>
    <span class='lbracket'>[</span>
      <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_regression_dir'>regression_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git init</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
      <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_regression_dir'>regression_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git fetch https://</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_token'>token</span><span class='embexpr_end'>}</span><span class='tstring_content'>@github.com/</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_repository'>regression_repository</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_refspec'>refspec</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
      <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>cd </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_regression_dir'>regression_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'> &amp;&amp; git checkout FETCH_HEAD</span><span class='tstring_end'>&quot;</span></span>
    <span class='rbracket'>]</span>
  <span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="collect_file_sizes-instance_method">
  
    #<strong>collect_file_sizes</strong>(build_dir: File.absolute_path(this_build_dir))  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


493
494
495
496
497
498
499
500
501
502
503
504</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 493</span>

<span class='kw'>def</span> <span class='id identifier rubyid_collect_file_sizes'>collect_file_sizes</span><span class='lparen'>(</span><span class='label'>build_dir:</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_absolute_path'>absolute_path</span><span class='lparen'>(</span><span class='id identifier rubyid_this_build_dir'>this_build_dir</span><span class='rparen'>)</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_results'>results</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
  <span class='const'>Dir</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>/**/size.*</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_file'>file</span><span class='op'>|</span>
    <span class='id identifier rubyid_file_name'>file_name</span> <span class='op'>=</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_sub'>sub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*size\.</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Parsing </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_file'>file</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_sizes'>sizes</span> <span class='op'>=</span> <span class='id identifier rubyid_parse_file_sizes'>parse_file_sizes</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span>
    <span class='id identifier rubyid_sizes'>sizes</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>file_name</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_file_name'>file_name</span>
    <span class='id identifier rubyid_results'>results</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_sizes'>sizes</span>
  <span class='kw'>end</span>

  <span class='ivar'>@file_sizes</span> <span class='op'>=</span> <span class='id identifier rubyid_results'>results</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="collect_perf_results-instance_method">
  
    #<strong>collect_perf_results</strong>(build_dir: File.absolute_path(this_build_dir))  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


506
507
508
509
510
511
512
513
514
515
516
517
518</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 506</span>

<span class='kw'>def</span> <span class='id identifier rubyid_collect_perf_results'>collect_perf_results</span><span class='lparen'>(</span><span class='label'>build_dir:</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_absolute_path'>absolute_path</span><span class='lparen'>(</span><span class='id identifier rubyid_this_build_dir'>this_build_dir</span><span class='rparen'>)</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_results'>results</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_files</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span><span class='rbracket'>]</span> <span class='rbrace'>}</span>

  <span class='const'>Dir</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>/**/perf.*</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_file'>file</span><span class='op'>|</span>
    <span class='id identifier rubyid_perf_counters_test_name'>perf_counters_test_name</span> <span class='op'>=</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_sub'>sub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*perf\.</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Parsing </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_file'>file</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_perf_output'>perf_output</span> <span class='op'>=</span> <span class='id identifier rubyid_parse_perf'>parse_perf</span><span class='lparen'>(</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span>
    <span class='id identifier rubyid_perf_output'>perf_output</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_name</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_perf_counters_test_name'>perf_counters_test_name</span>
    <span class='id identifier rubyid_results'>results</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_perf_output'>perf_output</span>
  <span class='kw'>end</span>

  <span class='ivar'>@perf_counters_results</span> <span class='op'>=</span> <span class='id identifier rubyid_results'>results</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="collect_valgrind_counters_results-instance_method">
  
    #<strong>collect_valgrind_counters_results</strong>(build_dir: File.absolute_path(this_build_dir))  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 520</span>

<span class='kw'>def</span> <span class='id identifier rubyid_collect_valgrind_counters_results'>collect_valgrind_counters_results</span><span class='lparen'>(</span><span class='label'>build_dir:</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_absolute_path'>absolute_path</span><span class='lparen'>(</span><span class='id identifier rubyid_this_build_dir'>this_build_dir</span><span class='rparen'>)</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_results'>results</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>object_files</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_files</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='lbracket'>[</span><span class='rbracket'>]</span> <span class='rbrace'>}</span>

  <span class='const'>Dir</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>/**/callgrind.*</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_file'>file</span><span class='op'>|</span>
    <span class='id identifier rubyid_valgrind_counters_test_name'>valgrind_counters_test_name</span> <span class='op'>=</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_sub'>sub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*callgrind\.</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_callgrind_output'>callgrind_output</span> <span class='op'>=</span> <span class='id identifier rubyid_parse_callgrind'>parse_callgrind</span><span class='lparen'>(</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span>
    <span class='id identifier rubyid_object_files'>object_files</span> <span class='op'>=</span> <span class='id identifier rubyid_callgrind_output'>callgrind_output</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>object_files</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Object files: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_object_files'>object_files</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>

    <span class='id identifier rubyid_results'>results</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>object_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_concat'>concat</span><span class='lparen'>(</span><span class='id identifier rubyid_object_files'>object_files</span><span class='rparen'>)</span>
    <span class='id identifier rubyid_callgrind_output'>callgrind_output</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_name</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_valgrind_counters_test_name'>valgrind_counters_test_name</span>
    <span class='id identifier rubyid_results'>results</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_callgrind_output'>callgrind_output</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_results'>results</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>object_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_uniq!'>uniq!</span>

  <span class='ivar'>@valgrind_counters_results</span> <span class='op'>=</span> <span class='id identifier rubyid_results'>results</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="compilers-instance_method">
  
    #<strong>compilers</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


93
94
95</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 93</span>

<span class='kw'>def</span> <span class='id identifier rubyid_compilers'>compilers</span>
  <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_compilers'>compilers</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="configuration-instance_method">
  
    #<strong>configuration</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


163
164
165</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 163</span>

<span class='kw'>def</span> <span class='id identifier rubyid_configuration'>configuration</span>
  <span class='ivar'>@config</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="descriptive_string-instance_method">
  
    #<strong>descriptive_string</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


97
98
99</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 97</span>

<span class='kw'>def</span> <span class='id identifier rubyid_descriptive_string'>descriptive_string</span>
  <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@commit_sha</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='ivar'>@branch_name</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='ivar'>@tag_name</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='ivar'>@buildid</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="device_id-instance_method">
  
    #<strong>device_id</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


116
117
118</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 116</span>

<span class='kw'>def</span> <span class='id identifier rubyid_device_id'>device_id</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:architecture</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_os'>os</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_os_release'>os_release</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:description</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_device_tag'>device_tag</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="device_tag-instance_method">
  
    #<strong>device_tag</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


109
110
111
112
113
114</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 109</span>

<span class='kw'>def</span> <span class='id identifier rubyid_device_tag'>device_tag</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_build_type_tag'>build_type_tag</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
  <span class='id identifier rubyid_build_type_tag'>build_type_tag</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:build_tag</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:build_tag</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
  <span class='id identifier rubyid_build_type_tag'>build_type_tag</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_type_tag'>build_type_tag</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:build_type</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:build_type</span><span class='rbracket'>]</span> <span class='op'>!~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>release</span><span class='regexp_end'>/i</span></span>
  <span class='id identifier rubyid_build_type_tag'>build_type_tag</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="do_build-instance_method">
  
    #<strong>do_build</strong>(compiler, regression_baseline, is_release = false)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


283
284
285
286
287
288
289
290
291
292
293
294
295</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 283</span>

<span class='kw'>def</span> <span class='id identifier rubyid_do_build'>do_build</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='comma'>,</span> <span class='id identifier rubyid_regression_baseline'>regression_baseline</span><span class='comma'>,</span> <span class='id identifier rubyid_is_release'>is_release</span> <span class='op'>=</span> <span class='kw'>false</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_src_dir'>src_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_this_src_dir'>this_src_dir</span>
  <span class='id identifier rubyid_build_dir'>build_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_this_build_dir'>this_build_dir</span>
  <span class='id identifier rubyid_start_time'>start_time</span> <span class='op'>=</span> <span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span>
  <span class='id identifier rubyid_checkout_succeeded'>checkout_succeeded</span> <span class='op'>=</span> <span class='id identifier rubyid_checkout'>checkout</span> <span class='id identifier rubyid_src_dir'>src_dir</span>  <span class='comment'># TODO: Abort if checkout did not succeed...
</span>
  <span class='id identifier rubyid_this_device_id'>this_device_id</span> <span class='op'>=</span> <span class='id identifier rubyid_device_id'>device_id</span> <span class='id identifier rubyid_compiler'>compiler</span>
  <span class='id identifier rubyid_args'>args</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="CMakeBuildArgs.html" title="CMakeBuildArgs (class)">CMakeBuildArgs</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="CMakeBuildArgs.html#initialize-instance_method" title="CMakeBuildArgs#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:build_type</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_this_device_id'>this_device_id</span><span class='comma'>,</span> <span class='id identifier rubyid_is_release'>is_release</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_cmake_build'>cmake_build</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='comma'>,</span> <span class='id identifier rubyid_src_dir'>src_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_build_dir'>build_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_this_regression_dir'>this_regression_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_regression_baseline'>regression_baseline</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span> <span class='kw'>if</span> <span class='id identifier rubyid_checkout_succeeded'>checkout_succeeded</span>
  <span class='ivar'>@build_time</span> <span class='op'>=</span> <span class='int'>0</span> <span class='kw'>if</span> <span class='ivar'>@build_time</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
  <span class='ivar'>@build_time</span> <span class='op'>+=</span> <span class='lparen'>(</span><span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span> <span class='op'>-</span> <span class='id identifier rubyid_start_time'>start_time</span><span class='rparen'>)</span>  <span class='comment'># TODO: Should we return true here?
</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="do_coverage-instance_method">
  
    #<strong>do_coverage</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 167</span>

<span class='kw'>def</span> <span class='id identifier rubyid_do_coverage'>do_coverage</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>unless</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_enabled</span><span class='rbracket'>]</span>

  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Beginning coverage calculation phase </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_release?'>release?</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>

  <span class='id identifier rubyid_build_dir'>build_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_this_build_dir'>this_build_dir</span>
  <span class='ivar'>@coverage_total_lines</span><span class='comma'>,</span> <span class='ivar'>@coverage_lines</span><span class='comma'>,</span> <span class='ivar'>@coverage_total_functions</span><span class='comma'>,</span> <span class='ivar'>@coverage_functions</span> <span class='op'>=</span> <span class='id identifier rubyid_lcov'>lcov</span> <span class='ivar'>@config</span><span class='comma'>,</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='comma'>,</span> <span class='id identifier rubyid_build_dir'>build_dir</span>
  <span class='kw'>return</span> <span class='kw'>if</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_s3_bucket</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

  <span class='id identifier rubyid_s3_script'>s3_script</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_dirname'>dirname</span><span class='lparen'>(</span><span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_dirname'>dirname</span><span class='lparen'>(</span><span class='kw'>__FILE__</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>/send_to_s3.py</span><span class='tstring_end'>&quot;</span></span>

  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Beginning upload of coverage results to s3</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>

  <span class='id identifier rubyid_out'>out</span><span class='comma'>,</span> <span class='op'>=</span> <span class='id identifier rubyid_run_scripts'>run_scripts</span><span class='lparen'>(</span>
    <span class='ivar'>@config</span><span class='comma'>,</span>
    <span class='lbracket'>[</span>
      <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_s3_script'>s3_script</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_s3_bucket</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get_full_build_name'>get_full_build_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>/lcov-html coverage</span><span class='tstring_end'>&quot;</span></span>
    <span class='rbracket'>]</span>
  <span class='rparen'>)</span>

  <span class='ivar'>@coverage_url</span> <span class='op'>=</span> <span class='id identifier rubyid_out'>out</span>
  <span class='id identifier rubyid_out'>out</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="do_test-instance_method">
  
    #<strong>do_test</strong>(compiler, regression_baseline)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 297</span>

<span class='kw'>def</span> <span class='id identifier rubyid_do_test'>do_test</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='comma'>,</span> <span class='id identifier rubyid_regression_baseline'>regression_baseline</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_src_dir'>src_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_this_src_dir'>this_src_dir</span>
  <span class='id identifier rubyid_build_dir'>build_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_this_build_dir'>this_build_dir</span>

  <span class='id identifier rubyid_build_succeeded'>build_succeeded</span> <span class='op'>=</span> <span class='id identifier rubyid_do_build'>do_build</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='comma'>,</span> <span class='id identifier rubyid_regression_baseline'>regression_baseline</span>

  <span class='id identifier rubyid_start_time'>start_time</span> <span class='op'>=</span> <span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span>
  <span class='kw'>if</span> <span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>DECENT_CI_SKIP_TEST</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Skipping test, DECENT_CI_SKIP_TEST is set in the environment</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
  <span class='kw'>elsif</span> <span class='id identifier rubyid_build_succeeded'>build_succeeded</span>
    <span class='id identifier rubyid_cmake_test'>cmake_test</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='comma'>,</span> <span class='id identifier rubyid_src_dir'>src_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_build_dir'>build_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:build_type</span><span class='rbracket'>]</span>
  <span class='kw'>end</span>
  <span class='ivar'>@test_time</span> <span class='op'>=</span> <span class='int'>0</span> <span class='kw'>if</span> <span class='ivar'>@test_time</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>  <span class='comment'># handle the case where test is called more than once
</span>
  <span class='ivar'>@test_time</span> <span class='op'>+=</span> <span class='lparen'>(</span><span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span> <span class='op'>-</span> <span class='id identifier rubyid_start_time'>start_time</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="do_upload-instance_method">
  
    #<strong>do_upload</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 191</span>

<span class='kw'>def</span> <span class='id identifier rubyid_do_upload'>do_upload</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>if</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:s3_upload</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Beginning upload phase </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_release?'>release?</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='op'>!</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:s3_upload</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>

  <span class='id identifier rubyid_build_dir'>build_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_this_build_dir'>this_build_dir</span>

  <span class='id identifier rubyid_s3_script'>s3_script</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_dirname'>dirname</span><span class='lparen'>(</span><span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_dirname'>dirname</span><span class='lparen'>(</span><span class='kw'>__FILE__</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>/send_to_s3.py</span><span class='tstring_end'>&quot;</span></span>

  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Beginning upload of build assets to s3</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>

  <span class='id identifier rubyid_out'>out</span><span class='comma'>,</span> <span class='op'>=</span> <span class='id identifier rubyid_run_scripts'>run_scripts</span><span class='lparen'>(</span>
    <span class='ivar'>@config</span><span class='comma'>,</span>
    <span class='lbracket'>[</span>
      <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_s3_script'>s3_script</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:s3_upload_bucket</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get_full_build_name'>get_full_build_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:s3_upload</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> assets</span><span class='tstring_end'>&quot;</span></span>
    <span class='rbracket'>]</span>
  <span class='rparen'>)</span>

  <span class='ivar'>@asset_url</span> <span class='op'>=</span> <span class='id identifier rubyid_out'>out</span>
  <span class='id identifier rubyid_out'>out</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="get_full_build_name-instance_method">
  
    #<strong>get_full_build_name</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


263
264
265</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 263</span>

<span class='kw'>def</span> <span class='id identifier rubyid_get_full_build_name'>get_full_build_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get_short_form'>get_short_form</span><span class='lparen'>(</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository_name'>repository_name</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='ivar'>@short_buildid</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:architecture</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get_short_form'>get_short_form</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:description</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_get_short_form'>get_short_form</span><span class='lparen'>(</span><span class='id identifier rubyid_device_tag'>device_tag</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="get_initials-instance_method">
  
    #<strong>get_initials</strong>(str)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


234
235
236
237</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 234</span>

<span class='kw'>def</span> <span class='id identifier rubyid_get_initials'>get_initials</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span>
  <span class='comment'># extracts just the initials from the string
</span>  <span class='id identifier rubyid_str'>str</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>[^A-Z0-9.\-a-z_+]</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>[_\-+].</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_s'>s</span><span class='op'>|</span> <span class='id identifier rubyid_s'>s</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_upcase'>upcase</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_sub'>sub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='symbol'>:upcase</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>[^A-Z0-9.]</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="get_short_form-instance_method">
  
    #<strong>get_short_form</strong>(str)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


243
244
245
246
247
248
249
250
251
252
253</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 243</span>

<span class='kw'>def</span> <span class='id identifier rubyid_get_short_form'>get_short_form</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span>
  <span class='kw'>return</span> <span class='kw'>nil</span> <span class='kw'>if</span> <span class='id identifier rubyid_str'>str</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

  <span class='kw'>if</span> <span class='id identifier rubyid_str'>str</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span> <span class='op'>&lt;=</span> <span class='int'>10</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>[a-zA-Z]</span><span class='regexp_end'>/</span></span>
    <span class='id identifier rubyid_str'>str</span>
  <span class='kw'>elsif</span> <span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*[A-Z].*</span><span class='regexp_end'>/</span></span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*[a-z].*</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>||</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*_.*</span><span class='regexp_end'>/</span></span> <span class='op'>||</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*-.*</span><span class='regexp_end'>/</span></span> <span class='op'>||</span> <span class='id identifier rubyid_str'>str</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>.*\+.*</span><span class='regexp_end'>/</span></span>
    <span class='id identifier rubyid_add_dashes'>add_dashes</span><span class='lparen'>(</span><span class='id identifier rubyid_get_initials'>get_initials</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span><span class='rparen'>)</span>
  <span class='kw'>else</span>
    <span class='id identifier rubyid_str'>str</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>[^a-zA-Z0-9.+_]</span><span class='regexp_end'>/</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="needs_regression_test-instance_method">
  
    #<strong>needs_regression_test</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


314
315
316</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 314</span>

<span class='kw'>def</span> <span class='id identifier rubyid_needs_regression_test'>needs_regression_test</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='lparen'>(</span><span class='op'>!</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_script'>regression_script</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='op'>!</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_regression_repository'>regression_repository</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='const'>ENV</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>DECENT_CI_SKIP_REGRESSIONS</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:skip_regression</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="needs_run-instance_method">
  
    #<strong>needs_run</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 213</span>

<span class='kw'>def</span> <span class='id identifier rubyid_needs_run'>needs_run</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='ivar'>@test_run</span>

  <span class='id identifier rubyid_file_names'>file_names</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
  <span class='kw'>begin</span>
    <span class='id identifier rubyid_files'>files</span> <span class='op'>=</span> <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_content'>content</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_repository'>results_repository</span><span class='comma'>,</span> <span class='symbol'>:path</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_path'>results_path</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_this_branch_folder'>this_branch_folder</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span>

    <span class='id identifier rubyid_files'>files</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span>
      <span class='id identifier rubyid_file_names'>file_names</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span>
    <span class='kw'>end</span>
  <span class='kw'>rescue</span> <span class='const'>Octokit</span><span class='op'>::</span><span class='const'>NotFound</span> <span class='comment'># rubocop:disable Lint/SuppressedException
</span>    <span class='comment'># repository doesn&#39;t have a _posts folder yet
</span>  <span class='kw'>end</span>

  <span class='id identifier rubyid_file_names'>file_names</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span>
    <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>if</span> <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_end_with?'>end_with?</span> <span class='id identifier rubyid_results_file_name'>results_file_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='kw'>end</span>

  <span class='kw'>true</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="next_build-instance_method">
  
    #<strong>next_build</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 341</span>

<span class='kw'>def</span> <span class='id identifier rubyid_next_build'>next_build</span>
  <span class='ivar'>@package_locations</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_results</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_messages</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
  <span class='ivar'>@build_results</span> <span class='op'>=</span> <span class='const'>SortedSet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
  <span class='ivar'>@package_results</span> <span class='op'>=</span> <span class='const'>SortedSet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
  <span class='ivar'>@dateprefix</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@failure</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@build_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@test_run</span> <span class='op'>=</span> <span class='kw'>false</span>
  <span class='ivar'>@package_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@install_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@valgrind_counters_results</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@perf_counters_results</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@file_sizes</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@coverage_lines</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_total_lines</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_functions</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_total_functions</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='ivar'>@coverage_url</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@asset_url</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='ivar'>@acting_as_baseline</span> <span class='op'>=</span> <span class='kw'>false</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="parse_callgrind-instance_method">
  
    #<strong>parse_callgrind</strong>(build_dir, file)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 397</span>

<span class='kw'>def</span> <span class='id identifier rubyid_parse_callgrind'>parse_callgrind</span><span class='lparen'>(</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='comma'>,</span> <span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_object_files'>object_files</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
  <span class='id identifier rubyid_source_files'>source_files</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
  <span class='id identifier rubyid_functions'>functions</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
  <span class='id identifier rubyid_props'>props</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>

  <span class='id identifier rubyid_get_name'>get_name</span> <span class='op'>=</span> <span class='id identifier rubyid_lambda'>lambda</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_files'>files</span><span class='comma'>,</span> <span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='op'>|</span>
    <span class='kw'>if</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='id identifier rubyid_name'>name</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
      <span class='id identifier rubyid_return_value'>return_value</span> <span class='op'>=</span> <span class='id identifier rubyid_files'>files</span><span class='lbracket'>[</span><span class='id identifier rubyid_id'>id</span><span class='rbracket'>]</span>
    <span class='kw'>elsif</span> <span class='id identifier rubyid_id'>id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
      <span class='id identifier rubyid_return_value'>return_value</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
    <span class='kw'>else</span>
      <span class='id identifier rubyid_files'>files</span><span class='lbracket'>[</span><span class='id identifier rubyid_id'>id</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
      <span class='id identifier rubyid_return_value'>return_value</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
    <span class='kw'>end</span>
    <span class='id identifier rubyid_return_value'>return_value</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_object_file'>object_file</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_source_file'>source_file</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_call_count'>call_count</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_called_object_file'>called_object_file</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_called_source_file'>called_source_file</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_called_function_name'>called_function_name</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_called_functions'>called_functions</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>

  <span class='const'>IO</span><span class='period'>.</span><span class='id identifier rubyid_foreach'>foreach</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_line'>line</span><span class='op'>|</span>
    <span class='kw'>if</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(?&lt;field&gt;[a-z]+): (?&lt;data&gt;.*)</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='kw'>if</span> <span class='id identifier rubyid_field'>field</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>totals</span><span class='tstring_end'>&#39;</span></span>
        <span class='id identifier rubyid_totals'>totals</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span>
        <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>totals</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_totals'>totals</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>

        <span class='kw'>if</span> <span class='id identifier rubyid_totals'>totals</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>==</span> <span class='int'>5</span>
          <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>conditional_branches</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_totals'>totals</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
          <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>conditional_branches_missses</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_totals'>totals</span><span class='lbracket'>[</span><span class='int'>2</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
          <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>indirect_jumps</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_totals'>totals</span><span class='lbracket'>[</span><span class='int'>3</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
          <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>indirect_jump_misses</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_totals'>totals</span><span class='lbracket'>[</span><span class='int'>4</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
        <span class='kw'>end</span>
      <span class='kw'>else</span>
        <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='id identifier rubyid_field'>field</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span>
      <span class='kw'>end</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^ob=(?&lt;objectfileid&gt;\([0-9]+\))?\s*(?&lt;objectfilename&gt;.*)?</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='id identifier rubyid_object_file'>object_file</span> <span class='op'>=</span> <span class='id identifier rubyid_get_name'>get_name</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_object_files'>object_files</span><span class='comma'>,</span> <span class='id identifier rubyid_objectfileid'>objectfileid</span><span class='comma'>,</span> <span class='id identifier rubyid_objectfilename'>objectfilename</span><span class='rparen'>)</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^fl=(?&lt;sourcefileid&gt;\([0-9]+\))?\s*(?&lt;sourcefilename&gt;.*)?</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='id identifier rubyid_source_file'>source_file</span> <span class='op'>=</span> <span class='id identifier rubyid_get_name'>get_name</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_source_files'>source_files</span><span class='comma'>,</span> <span class='id identifier rubyid_sourcefileid'>sourcefileid</span><span class='comma'>,</span> <span class='id identifier rubyid_sourcefilename'>sourcefilename</span><span class='rparen'>)</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(fe|fi)=(?&lt;sourcefileid&gt;\([0-9]+\))?\s*(?&lt;sourcefilename&gt;.*)?</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='id identifier rubyid_get_name'>get_name</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_source_files'>source_files</span><span class='comma'>,</span> <span class='id identifier rubyid_sourcefileid'>sourcefileid</span><span class='comma'>,</span> <span class='id identifier rubyid_sourcefilename'>sourcefilename</span><span class='rparen'>)</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^fn=(?&lt;functionid&gt;\([0-9]+\))?\s*(?&lt;functionname&gt;.*)?</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='id identifier rubyid_get_name'>get_name</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_functions'>functions</span><span class='comma'>,</span> <span class='id identifier rubyid_functionid'>functionid</span><span class='comma'>,</span> <span class='id identifier rubyid_functionname'>functionname</span><span class='rparen'>)</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^cob=(?&lt;calledobjectfileid&gt;\([0-9]+\))?\s*(?&lt;calledobjectfilename&gt;.*)?</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='id identifier rubyid_called_object_file'>called_object_file</span> <span class='op'>=</span> <span class='id identifier rubyid_get_name'>get_name</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_object_files'>object_files</span><span class='comma'>,</span> <span class='id identifier rubyid_calledobjectfileid'>calledobjectfileid</span><span class='comma'>,</span> <span class='id identifier rubyid_calledobjectfilename'>calledobjectfilename</span><span class='rparen'>)</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(cfi|cfl)=(?&lt;calledsourcefileid&gt;\([0-9]+\))?\s*(?&lt;calledsourcefilename&gt;.*)?</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='id identifier rubyid_called_source_file'>called_source_file</span> <span class='op'>=</span> <span class='id identifier rubyid_get_name'>get_name</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_source_files'>source_files</span><span class='comma'>,</span> <span class='id identifier rubyid_calledsourcefileid'>calledsourcefileid</span><span class='comma'>,</span> <span class='id identifier rubyid_calledsourcefilename'>calledsourcefilename</span><span class='rparen'>)</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^cfn=(?&lt;calledfunctionid&gt;\([0-9]+\))?\s*(?&lt;calledfunctionname&gt;.*)?</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span>
      <span class='id identifier rubyid_called_function_name'>called_function_name</span> <span class='op'>=</span> <span class='id identifier rubyid_get_name'>get_name</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_functions'>functions</span><span class='comma'>,</span> <span class='id identifier rubyid_calledfunctionid'>calledfunctionid</span><span class='comma'>,</span> <span class='id identifier rubyid_calledfunctionname'>calledfunctionname</span><span class='rparen'>)</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^calls=(?&lt;count&gt;[0-9]+)?\s+(?&lt;target_position&gt;[0-9]+)</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span> <span class='comment'># rubocop:disable Lint/UselessAssignment
</span>      <span class='id identifier rubyid_call_count'>call_count</span> <span class='op'>=</span> <span class='id identifier rubyid_count'>count</span>
    <span class='kw'>elsif</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^(?&lt;subposition&gt;(((\+|-)?[0-9]+)|\*)) (?&lt;cost&gt;[0-9]+)</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_line'>line</span> <span class='comment'># rubocop:disable Lint/UselessAssignment
</span>      <span class='kw'>unless</span> <span class='id identifier rubyid_call_count'>call_count</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
        <span class='id identifier rubyid_this_object_file'>this_object_file</span> <span class='op'>=</span> <span class='id identifier rubyid_called_object_file'>called_object_file</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>?</span> <span class='id identifier rubyid_object_file'>object_file</span> <span class='op'>:</span> <span class='id identifier rubyid_called_object_file'>called_object_file</span>
        <span class='id identifier rubyid_this_source_file'>this_source_file</span> <span class='op'>=</span> <span class='id identifier rubyid_called_source_file'>called_source_file</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>?</span> <span class='id identifier rubyid_source_file'>source_file</span> <span class='op'>:</span> <span class='id identifier rubyid_called_source_file'>called_source_file</span>

        <span class='id identifier rubyid_called_func_is_nil'>called_func_is_nil</span> <span class='op'>=</span> <span class='id identifier rubyid_called_functions'>called_functions</span><span class='lbracket'>[</span><span class='lbracket'>[</span><span class='id identifier rubyid_this_object_file'>this_object_file</span><span class='comma'>,</span> <span class='id identifier rubyid_this_source_file'>this_source_file</span><span class='comma'>,</span> <span class='id identifier rubyid_called_function_name'>called_function_name</span><span class='rbracket'>]</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
        <span class='id identifier rubyid_called_functions'>called_functions</span><span class='lbracket'>[</span><span class='lbracket'>[</span><span class='id identifier rubyid_this_object_file'>this_object_file</span><span class='comma'>,</span> <span class='id identifier rubyid_this_source_file'>this_source_file</span><span class='comma'>,</span> <span class='id identifier rubyid_called_function_name'>called_function_name</span><span class='rbracket'>]</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='int'>0</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cost</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='int'>0</span> <span class='rbrace'>}</span> <span class='kw'>if</span> <span class='id identifier rubyid_called_func_is_nil'>called_func_is_nil</span>

        <span class='id identifier rubyid_called_functions'>called_functions</span><span class='lbracket'>[</span><span class='lbracket'>[</span><span class='id identifier rubyid_this_object_file'>this_object_file</span><span class='comma'>,</span> <span class='id identifier rubyid_this_source_file'>this_source_file</span><span class='comma'>,</span> <span class='id identifier rubyid_called_function_name'>called_function_name</span><span class='rbracket'>]</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>count</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>+=</span> <span class='id identifier rubyid_call_count'>call_count</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
        <span class='id identifier rubyid_called_functions'>called_functions</span><span class='lbracket'>[</span><span class='lbracket'>[</span><span class='id identifier rubyid_this_object_file'>this_object_file</span><span class='comma'>,</span> <span class='id identifier rubyid_this_source_file'>this_source_file</span><span class='comma'>,</span> <span class='id identifier rubyid_called_function_name'>called_function_name</span><span class='rbracket'>]</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cost</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>+=</span> <span class='id identifier rubyid_cost'>cost</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>

        <span class='id identifier rubyid_call_count'>call_count</span> <span class='op'>=</span> <span class='kw'>nil</span>
        <span class='id identifier rubyid_called_object_file'>called_object_file</span> <span class='op'>=</span> <span class='kw'>nil</span>
        <span class='id identifier rubyid_called_source_file'>called_source_file</span> <span class='op'>=</span> <span class='kw'>nil</span>
        <span class='id identifier rubyid_called_function_name'>called_function_name</span> <span class='op'>=</span> <span class='kw'>nil</span>
      <span class='kw'>end</span>      <span class='comment'># elsif line == &quot;\n&quot;
</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>object_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>

  <span class='id identifier rubyid_object_files'>object_files</span><span class='period'>.</span><span class='id identifier rubyid_each_value'>each_value</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_this_file'>this_file</span><span class='op'>|</span>
    <span class='id identifier rubyid_abs_path'>abs_path</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_absolute_path'>absolute_path</span><span class='lparen'>(</span><span class='id identifier rubyid_this_file'>this_file</span><span class='comma'>,</span> <span class='id identifier rubyid_build_dir'>build_dir</span><span class='rparen'>)</span>
    <span class='kw'>next</span> <span class='kw'>unless</span> <span class='id identifier rubyid_abs_path'>abs_path</span><span class='period'>.</span><span class='id identifier rubyid_start_with?'>start_with?</span><span class='lparen'>(</span><span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_absolute_path'>absolute_path</span><span class='lparen'>(</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='rparen'>)</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_exist?'>exist?</span><span class='lparen'>(</span><span class='id identifier rubyid_abs_path'>abs_path</span><span class='rparen'>)</span>

    <span class='comment'># is in subdir?
</span>    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Path: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_abs_path'>abs_path</span><span class='embexpr_end'>}</span><span class='tstring_content'>  build_dir </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>object_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>&lt;&lt;</span> <span class='lbrace'>{</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>name</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='const'>Pathname</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_abs_path'>abs_path</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_relative_path_from'>relative_path_from</span><span class='lparen'>(</span><span class='const'>Pathname</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_build_dir'>build_dir</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>size</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='lparen'>(</span><span class='id identifier rubyid_abs_path'>abs_path</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_most_expensive'>most_expensive</span> <span class='op'>=</span> <span class='id identifier rubyid_called_functions'>called_functions</span><span class='period'>.</span><span class='id identifier rubyid_sort_by'>sort_by</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>cost</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_reverse'>reverse</span><span class='period'>.</span><span class='id identifier rubyid_slice'>slice</span><span class='lparen'>(</span><span class='int'>0</span><span class='comma'>,</span> <span class='int'>50</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_most_called'>most_called</span> <span class='op'>=</span> <span class='id identifier rubyid_called_functions'>called_functions</span><span class='period'>.</span><span class='id identifier rubyid_sort_by'>sort_by</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>count</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_reverse'>reverse</span><span class='period'>.</span><span class='id identifier rubyid_slice'>slice</span><span class='lparen'>(</span><span class='int'>0</span><span class='comma'>,</span> <span class='int'>50</span><span class='rparen'>)</span>

  <span class='id identifier rubyid_important_functions'>important_functions</span> <span class='op'>=</span> <span class='id identifier rubyid_most_expensive'>most_expensive</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_most_called'>most_called</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_collect'>collect</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='lbrace'>{</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>object_file</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_k'>k</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>source_file</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_k'>k</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>function_name</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_k'>k</span><span class='lbracket'>[</span><span class='int'>2</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span> <span class='rbrace'>}</span>

  <span class='id identifier rubyid_props'>props</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>data</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_important_functions'>important_functions</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="parse_file_sizes-instance_method">
  
    #<strong>parse_file_sizes</strong>(file)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 366</span>

<span class='kw'>def</span> <span class='id identifier rubyid_parse_file_sizes'>parse_file_sizes</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_props'>props</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>

  <span class='id identifier rubyid_names'>names</span> <span class='op'>=</span> <span class='kw'>nil</span>

  <span class='const'>IO</span><span class='period'>.</span><span class='id identifier rubyid_foreach'>foreach</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_line'>line</span><span class='op'>|</span>
    <span class='kw'>if</span> <span class='id identifier rubyid_names'>names</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
      <span class='id identifier rubyid_names'>names</span> <span class='op'>=</span> <span class='id identifier rubyid_line'>line</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span>
    <span class='kw'>else</span>
      <span class='id identifier rubyid_values'>values</span> <span class='op'>=</span> <span class='id identifier rubyid_line'>line</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span>

      <span class='id identifier rubyid_values'>values</span><span class='period'>.</span><span class='id identifier rubyid_each_index'>each_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_index'>index</span><span class='op'>|</span>
        <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='id identifier rubyid_names'>names</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_values'>values</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span>
      <span class='kw'>end</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_props'>props</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="parse_perf-instance_method">
  
    #<strong>parse_perf</strong>(file)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


386
387
388
389
390
391
392
393
394
395</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 386</span>

<span class='kw'>def</span> <span class='id identifier rubyid_parse_perf'>parse_perf</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_props'>props</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>

  <span class='const'>IO</span><span class='period'>.</span><span class='id identifier rubyid_foreach'>foreach</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_line'>line</span><span class='op'>|</span>
    <span class='id identifier rubyid_values'>values</span> <span class='op'>=</span> <span class='id identifier rubyid_line'>line</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>,</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_props'>props</span><span class='lbracket'>[</span><span class='id identifier rubyid_values'>values</span><span class='lbracket'>[</span><span class='int'>2</span><span class='rbracket'>]</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_values'>values</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span> <span class='kw'>if</span> <span class='id identifier rubyid_values'>values</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>&gt;</span> <span class='lparen'>(</span><span class='int'>3</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='lparen'>(</span><span class='id identifier rubyid_values'>values</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>&lt;not supported&gt;</span><span class='tstring_end'>&#39;</span></span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_values'>values</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_props'>props</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="post_results-instance_method">
  
    #<strong>post_results</strong>(compiler, pending)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 572</span>

<span class='kw'>def</span> <span class='id identifier rubyid_post_results'>post_results</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='comma'>,</span> <span class='id identifier rubyid_pending'>pending</span><span class='rparen'>)</span>
  <span class='ivar'>@dateprefix</span> <span class='op'>=</span> <span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span><span class='period'>.</span><span class='id identifier rubyid_utc'>utc</span><span class='period'>.</span><span class='id identifier rubyid_strftime'>strftime</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>%F</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='ivar'>@dateprefix</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

  <span class='id identifier rubyid_test_results_data'>test_results_data</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>

  <span class='id identifier rubyid_test_results_passed'>test_results_passed</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='id identifier rubyid_test_results_total'>test_results_total</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='id identifier rubyid_test_results_warning'>test_results_warning</span> <span class='op'>=</span> <span class='int'>0</span>

  <span class='id identifier rubyid_test_results_failure_counts'>test_results_failure_counts</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>

  <span class='ivar'>@test_results</span><span class='op'>&amp;.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_t'>t</span><span class='op'>|</span>
    <span class='id identifier rubyid_test_results_total'>test_results_total</span> <span class='op'>+=</span> <span class='int'>1</span>
    <span class='id identifier rubyid_test_results_passed'>test_results_passed</span> <span class='op'>+=</span> <span class='int'>1</span> <span class='kw'>if</span> <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_passed'>passed</span>
    <span class='id identifier rubyid_test_results_warning'>test_results_warning</span> <span class='op'>+=</span> <span class='int'>1</span> <span class='kw'>if</span> <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_warning'>warning</span>

    <span class='id identifier rubyid_category_index'>category_index</span> <span class='op'>=</span> <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>.</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_category_name'>category_name</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Uncategorized</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_category_name'>category_name</span> <span class='op'>=</span> <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_slice'>slice</span><span class='lparen'>(</span><span class='int'>0</span><span class='comma'>,</span> <span class='id identifier rubyid_category_index'>category_index</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_category_index'>category_index</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

    <span class='id identifier rubyid_failure_type'>failure_type</span> <span class='op'>=</span> <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_passed'>passed</span> <span class='op'>?</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Passed</span><span class='tstring_end'>&#39;</span></span> <span class='op'>:</span> <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_failure_type'>failure_type</span>

    <span class='kw'>if</span> <span class='id identifier rubyid_test_results_failure_counts'>test_results_failure_counts</span><span class='lbracket'>[</span><span class='id identifier rubyid_category_name'>category_name</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
      <span class='id identifier rubyid_category'>category</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
      <span class='id identifier rubyid_category'>category</span><span class='period'>.</span><span class='id identifier rubyid_default'>default</span> <span class='op'>=</span> <span class='int'>0</span>
      <span class='id identifier rubyid_test_results_failure_counts'>test_results_failure_counts</span><span class='lbracket'>[</span><span class='id identifier rubyid_category_name'>category_name</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_category'>category</span>
    <span class='kw'>end</span>

    <span class='id identifier rubyid_test_results_failure_counts'>test_results_failure_counts</span><span class='lbracket'>[</span><span class='id identifier rubyid_category_name'>category_name</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_failure_type'>failure_type</span><span class='rbracket'>]</span> <span class='op'>+=</span> <span class='int'>1</span>

    <span class='id identifier rubyid_test_results_data'>test_results_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_build_errors'>build_errors</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='id identifier rubyid_build_warnings'>build_warnings</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='id identifier rubyid_build_results_data'>build_results_data</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>

  <span class='kw'>unless</span> <span class='ivar'>@build_results</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='kw'>begin</span>
      <span class='ivar'>@build_results</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_b'>b</span><span class='op'>|</span>
        <span class='id identifier rubyid_build_errors'>build_errors</span> <span class='op'>+=</span> <span class='int'>1</span> <span class='kw'>if</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_error?'>error?</span>
        <span class='id identifier rubyid_build_results_data'>build_results_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span>
      <span class='kw'>end</span>
    <span class='kw'>rescue</span>
      <span class='id identifier rubyid_build_errors'>build_errors</span> <span class='op'>+=</span> <span class='int'>1</span>
      <span class='id identifier rubyid_build_results_data'>build_results_data</span> <span class='op'>&lt;&lt;</span> <span class='lbrace'>{</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>message</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>CI Issue: Error occurred when processing build results on this test</span><span class='tstring_end'>&#39;</span></span> <span class='rbrace'>}</span>
      <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_warn'>warn</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Error in processing build_results, maybe a duplicate build_result...?</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='kw'>end</span>
    <span class='id identifier rubyid_build_warnings'>build_warnings</span> <span class='op'>=</span> <span class='ivar'>@build_results</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span> <span class='op'>-</span> <span class='id identifier rubyid_build_errors'>build_errors</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_package_errors'>package_errors</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='id identifier rubyid_package_warnings'>package_warnings</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='id identifier rubyid_package_results_data'>package_results_data</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>

  <span class='ivar'>@package_results</span><span class='op'>&amp;.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_b'>b</span><span class='op'>|</span>
    <span class='id identifier rubyid_package_errors'>package_errors</span> <span class='op'>+=</span> <span class='int'>1</span> <span class='kw'>if</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_error?'>error?</span>
    <span class='id identifier rubyid_package_warnings'>package_warnings</span> <span class='op'>+=</span> <span class='int'>1</span> <span class='kw'>if</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_warning?'>warning?</span>

    <span class='id identifier rubyid_package_results_data'>package_results_data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_valgrind_counters_total_time'>valgrind_counters_total_time</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_valgrind_counters_test_count'>valgrind_counters_test_count</span> <span class='op'>=</span> <span class='int'>0</span>
  <span class='id identifier rubyid_valgrind_counters_total_conditional_branches'>valgrind_counters_total_conditional_branches</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_valgrind_counters_total_conditional_branch_misses'>valgrind_counters_total_conditional_branch_misses</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_valgrind_counters_total_indirect_jumps'>valgrind_counters_total_indirect_jumps</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='id identifier rubyid_valgrind_counters_total_indirect_jump_misses'>valgrind_counters_total_indirect_jump_misses</span> <span class='op'>=</span> <span class='kw'>nil</span>

  <span class='kw'>unless</span> <span class='ivar'>@valgrind_counters_results</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='id identifier rubyid_valgrind_counters_total_time'>valgrind_counters_total_time</span> <span class='op'>=</span> <span class='int'>0</span>
    <span class='id identifier rubyid_valgrind_counters_total_conditional_branches'>valgrind_counters_total_conditional_branches</span> <span class='op'>=</span> <span class='int'>0</span>
    <span class='id identifier rubyid_valgrind_counters_total_conditional_branch_misses'>valgrind_counters_total_conditional_branch_misses</span> <span class='op'>=</span> <span class='int'>0</span>
    <span class='id identifier rubyid_valgrind_counters_total_indirect_jumps'>valgrind_counters_total_indirect_jumps</span> <span class='op'>=</span> <span class='int'>0</span>
    <span class='id identifier rubyid_valgrind_counters_total_indirect_jump_misses'>valgrind_counters_total_indirect_jump_misses</span> <span class='op'>=</span> <span class='int'>0</span>

    <span class='ivar'>@valgrind_counters_results</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
      <span class='id identifier rubyid_valgrind_counters_test_count'>valgrind_counters_test_count</span> <span class='op'>+=</span> <span class='int'>1</span>
      <span class='id identifier rubyid_valgrind_counters_total_time'>valgrind_counters_total_time</span> <span class='op'>+=</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>totals</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>totals</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
      <span class='id identifier rubyid_valgrind_counters_total_conditional_branches'>valgrind_counters_total_conditional_branches</span> <span class='op'>+=</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>conditional_branches</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>conditional_branches</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
      <span class='id identifier rubyid_valgrind_counters_total_conditional_branch_misses'>valgrind_counters_total_conditional_branch_misses</span> <span class='op'>+=</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>conditional_branch_misses</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>conditional_branch_misses</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
      <span class='id identifier rubyid_valgrind_counters_total_indirect_jumps'>valgrind_counters_total_indirect_jumps</span> <span class='op'>+=</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>indirect_jumps</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>indirect_jumps</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
      <span class='id identifier rubyid_valgrind_counters_total_indirect_jump_misses'>valgrind_counters_total_indirect_jump_misses</span> <span class='op'>+=</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>indirect_jump_misses</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='id identifier rubyid_v'>v</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>indirect_jump_misses</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_perf_counters'>perf_counters</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>

  <span class='kw'>unless</span> <span class='ivar'>@perf_counters_results</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>perf counters: </span><span class='embexpr_beg'>#{</span><span class='ivar'>@perf_counters_results</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_perf_test_count'>perf_test_count</span> <span class='op'>=</span> <span class='int'>0</span>
    <span class='ivar'>@perf_counters_results</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_files</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
      <span class='id identifier rubyid_perf_test_count'>perf_test_count</span> <span class='op'>+=</span> <span class='int'>1</span>
      <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span>
        <span class='kw'>next</span> <span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>String</span>

        <span class='id identifier rubyid_new_key'>new_key</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>perf_total_</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>

        <span class='id identifier rubyid_perf_counters'>perf_counters</span><span class='lbracket'>[</span><span class='id identifier rubyid_new_key'>new_key</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='int'>0</span> <span class='kw'>if</span> <span class='id identifier rubyid_perf_counters'>perf_counters</span><span class='lbracket'>[</span><span class='id identifier rubyid_new_key'>new_key</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

        <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Key: &#39;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_new_key'>new_key</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39; value: &#39;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
        <span class='id identifier rubyid_perf_counters'>perf_counters</span><span class='lbracket'>[</span><span class='id identifier rubyid_new_key'>new_key</span><span class='rbracket'>]</span> <span class='op'>+=</span> <span class='id identifier rubyid_value'>value</span>
      <span class='kw'>end</span>
    <span class='kw'>end</span>
    <span class='id identifier rubyid_perf_counters'>perf_counters</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>perf_test_count</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_perf_test_count'>perf_test_count</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_package_names_string'>package_names_string</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='kw'>unless</span> <span class='ivar'>@package_locations</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='id identifier rubyid_package_names_string'>package_names_string</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
    <span class='ivar'>@package_locations</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_location'>location</span><span class='op'>|</span>
      <span class='id identifier rubyid_package_names_string'>package_names_string</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>; </span><span class='embexpr_beg'>#{</span><span class='const'>Pathname</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_location'>location</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_basename'>basename</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_yaml_data'>yaml_data</span> <span class='op'>=</span> <span class='lbrace'>{</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>title</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_build_base_name'>build_base_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>permalink</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>.html</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>tags</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>data</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>layout</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>ci_results</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>date</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span><span class='period'>.</span><span class='id identifier rubyid_utc'>utc</span><span class='period'>.</span><span class='id identifier rubyid_strftime'>strftime</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>%F %T</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>unhandled_failure</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='op'>!</span><span class='ivar'>@failure</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>build_error_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_build_errors'>build_errors</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>build_warning_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_build_warnings'>build_warnings</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>package_error_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_package_errors'>package_errors</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>package_warning_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_package_warnings'>package_warnings</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_test_results_total'>test_results_total</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_passed_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_test_results_passed'>test_results_passed</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>repository</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@repository</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>compiler</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:name</span><span class='rbracket'>]</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>compiler_version</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:version</span><span class='rbracket'>]</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>architecture</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:architecture</span><span class='rbracket'>]</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>os</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_os'>os</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>os_release</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_os_release'>os_release</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>is_release</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_release?'>release?</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>release_packaged</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='op'>!</span><span class='ivar'>@package_locations</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>packaging_skipped</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:skip_packaging</span><span class='rbracket'>]</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>package_name</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_package_names_string'>package_names_string</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>tag_name</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@tag_name</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>commit_sha</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@commit_sha</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>branch_name</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@branch_name</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_run</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='op'>!</span><span class='ivar'>@test_results</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>pull_request_issue_id</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@pull_id</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>pull_request_base_repository</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@pull_request_base_repository</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>pull_request_base_ref</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@pull_request_base_ref</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>device_id</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_device_id'>device_id</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>pending</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_pending'>pending</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>build_time</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@build_time</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_time</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@test_time</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>package_time</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@package_time</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>install_time</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@install_time</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>results_repository</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_repository'>results_repository</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>machine_name</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='const'>Socket</span><span class='period'>.</span><span class='id identifier rubyid_gethostname'>gethostname</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>machine_ip</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='const'>Socket</span><span class='period'>.</span><span class='id identifier rubyid_ip_address_list'>ip_address_list</span><span class='period'>.</span><span class='id identifier rubyid_find'>find</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_ai'>ai</span><span class='op'>|</span> <span class='id identifier rubyid_ai'>ai</span><span class='period'>.</span><span class='id identifier rubyid_ipv4?'>ipv4?</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id identifier rubyid_ai'>ai</span><span class='period'>.</span><span class='id identifier rubyid_ipv4_loopback?'>ipv4_loopback?</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_ip_address'>ip_address</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_pass_limit</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_test_pass_limit'>test_pass_limit</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_warn_limit</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_test_warn_limit'>test_warn_limit</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_enabled</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_enabled</span><span class='rbracket'>]</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_pass_limit</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_pass_limit</span><span class='rbracket'>]</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_warn_limit</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_warn_limit</span><span class='rbracket'>]</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_lines</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@coverage_lines</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_total_lines</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@coverage_total_lines</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_functions</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@coverage_functions</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_total_functions</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@coverage_total_functions</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>coverage_url</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@coverage_url</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>asset_url</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@asset_url</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>performance_total_time</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_total_time'>valgrind_counters_total_time</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>performance_test_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_test_count'>valgrind_counters_test_count</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>valgrind_counters_total_time</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_total_time'>valgrind_counters_total_time</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>valgrind_counters_test_count</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_test_count'>valgrind_counters_test_count</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>valgrind_counters_total_conditional_branches</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_total_conditional_branches'>valgrind_counters_total_conditional_branches</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>valgrind_counters_total_conditional_branch_misses</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_total_conditional_branch_misses'>valgrind_counters_total_conditional_branch_misses</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>valgrind_counters_total_indirect_jumps</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_total_indirect_jumps'>valgrind_counters_total_indirect_jumps</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>valgrind_counters_total_indirect_jump_misses</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_valgrind_counters_total_indirect_jump_misses'>valgrind_counters_total_indirect_jump_misses</span>
  <span class='rbrace'>}</span>

  <span class='id identifier rubyid_yaml_data'>yaml_data</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_perf_counters'>perf_counters</span><span class='rparen'>)</span>

  <span class='id identifier rubyid_json_data'>json_data</span> <span class='op'>=</span> <span class='lbrace'>{</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>build_results</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_build_results_data'>build_results_data</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>test_results</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_test_results_data'>test_results_data</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failure</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@failure</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>package_results</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_package_results_data'>package_results_data</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>configuration</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_yaml_data'>yaml_data</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>performance_results</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@valgrind_counters_results</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>perf_performance_results</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@perf_counters_results</span><span class='comma'>,</span>
    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>file_sizes</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@file_sizes</span>
  <span class='rbrace'>}</span>

  <span class='id identifier rubyid_json_document'>json_document</span> <span class='op'>=</span>
    <span class='heredoc_beg'>&lt;&lt;-YAML</span>
<span class='embexpr_beg'>#{</span><span class='id identifier rubyid_yaml_data'>yaml_data</span><span class='period'>.</span><span class='id identifier rubyid_to_yaml'>to_yaml</span><span class='embexpr_end'>}</span><span class='tstring_content'>
---
</span><span class='embexpr_beg'>#{</span><span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_pretty_generate'>pretty_generate</span><span class='lparen'>(</span><span class='id identifier rubyid_json_data'>json_data</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>
</span><span class='heredoc_end'>    YAML
</span>
  <span class='id identifier rubyid_test_failed'>test_failed</span> <span class='op'>=</span> <span class='kw'>false</span>
  <span class='kw'>if</span> <span class='ivar'>@test_results</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='id identifier rubyid_test_color'>test_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>red</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_test_failed'>test_failed</span> <span class='op'>=</span> <span class='kw'>true</span>
    <span class='id identifier rubyid_test_string'>test_string</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>NA</span><span class='tstring_end'>&#39;</span></span>
  <span class='kw'>else</span>
    <span class='id identifier rubyid_test_percent'>test_percent</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='id identifier rubyid_test_results_total'>test_results_total</span><span class='period'>.</span><span class='id identifier rubyid_zero?'>zero?</span>
                     <span class='float'>100.0</span>
                   <span class='kw'>else</span>
                     <span class='lparen'>(</span><span class='id identifier rubyid_test_results_passed'>test_results_passed</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span> <span class='op'>/</span> <span class='id identifier rubyid_test_results_total'>test_results_total</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span><span class='rparen'>)</span> <span class='op'>*</span> <span class='float'>100.0</span>
                   <span class='kw'>end</span>

    <span class='kw'>if</span> <span class='id identifier rubyid_test_percent'>test_percent</span> <span class='op'>&gt;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_test_pass_limit'>test_pass_limit</span>
      <span class='id identifier rubyid_test_color'>test_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>green</span><span class='tstring_end'>&#39;</span></span>
    <span class='kw'>elsif</span> <span class='id identifier rubyid_test_percent'>test_percent</span> <span class='op'>&gt;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_test_warn_limit'>test_warn_limit</span>
      <span class='id identifier rubyid_test_color'>test_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>yellow</span><span class='tstring_end'>&#39;</span></span>
    <span class='kw'>else</span>
      <span class='id identifier rubyid_test_color'>test_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>red</span><span class='tstring_end'>&#39;</span></span>
      <span class='id identifier rubyid_test_failed'>test_failed</span> <span class='op'>=</span> <span class='kw'>true</span>
    <span class='kw'>end</span>
    <span class='id identifier rubyid_test_string'>test_string</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_percent'>test_percent</span><span class='period'>.</span><span class='id identifier rubyid_round'>round</span><span class='lparen'>(</span><span class='int'>2</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>%25</span><span class='tstring_end'>&quot;</span></span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_test_badge'>test_badge</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&lt;a href=&#39;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_base_url'>results_base_url</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>.html&#39;&gt;![Test Badge](http://img.shields.io/badge/tests%20passed-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_string'>test_string</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_color'>test_color</span><span class='embexpr_end'>}</span><span class='tstring_content'>.png)&lt;/a&gt;</span><span class='tstring_end'>&quot;</span></span>

  <span class='id identifier rubyid_build_failed'>build_failed</span> <span class='op'>=</span> <span class='kw'>false</span>
  <span class='kw'>if</span> <span class='id identifier rubyid_build_errors'>build_errors</span><span class='period'>.</span><span class='id identifier rubyid_positive?'>positive?</span>
    <span class='id identifier rubyid_build_color'>build_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>red</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_build_string'>build_string</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failing</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_build_failed'>build_failed</span> <span class='op'>=</span> <span class='kw'>true</span>
  <span class='kw'>elsif</span> <span class='id identifier rubyid_build_warnings'>build_warnings</span><span class='period'>.</span><span class='id identifier rubyid_positive?'>positive?</span>
    <span class='id identifier rubyid_build_color'>build_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>yellow</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_build_string'>build_string</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>warnings</span><span class='tstring_end'>&#39;</span></span>
  <span class='kw'>else</span>
    <span class='id identifier rubyid_build_color'>build_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>green</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_build_string'>build_string</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>passing</span><span class='tstring_end'>&#39;</span></span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_build_badge'>build_badge</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&lt;a href=&#39;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_base_url'>results_base_url</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>.html&#39;&gt;![Build Badge](http://img.shields.io/badge/build%20status-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_string'>build_string</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_color'>build_color</span><span class='embexpr_end'>}</span><span class='tstring_content'>.png)&lt;/a&gt;</span><span class='tstring_end'>&quot;</span></span>

  <span class='id identifier rubyid_cov_failed'>cov_failed</span> <span class='op'>=</span> <span class='kw'>false</span>
  <span class='id identifier rubyid_coverage_badge'>coverage_badge</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>

  <span class='kw'>if</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_enabled</span><span class='rbracket'>]</span>
    <span class='id identifier rubyid_coverage_percent'>coverage_percent</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='ivar'>@coverage_total_lines</span><span class='period'>.</span><span class='id identifier rubyid_zero?'>zero?</span>
                         <span class='int'>0</span>
                       <span class='kw'>else</span>
                         <span class='lparen'>(</span><span class='ivar'>@coverage_lines</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span> <span class='op'>/</span> <span class='ivar'>@coverage_total_lines</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span><span class='rparen'>)</span> <span class='op'>*</span> <span class='float'>100.0</span>
                       <span class='kw'>end</span>

    <span class='kw'>if</span> <span class='id identifier rubyid_coverage_percent'>coverage_percent</span> <span class='op'>&gt;=</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_pass_limit</span><span class='rbracket'>]</span>
      <span class='id identifier rubyid_cov_color'>cov_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>green</span><span class='tstring_end'>&#39;</span></span>
    <span class='kw'>elsif</span> <span class='id identifier rubyid_coverage_percent'>coverage_percent</span> <span class='op'>&gt;=</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:coverage_warn_limit</span><span class='rbracket'>]</span>
      <span class='id identifier rubyid_cov_color'>cov_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>yellow</span><span class='tstring_end'>&#39;</span></span>
    <span class='kw'>else</span>
      <span class='id identifier rubyid_cov_color'>cov_color</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>red</span><span class='tstring_end'>&#39;</span></span>
      <span class='id identifier rubyid_cov_failed'>cov_failed</span> <span class='op'>=</span> <span class='kw'>true</span>
    <span class='kw'>end</span>
    <span class='id identifier rubyid_cov_str'>cov_str</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_coverage_percent'>coverage_percent</span><span class='period'>.</span><span class='id identifier rubyid_round'>round</span><span class='lparen'>(</span><span class='int'>2</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'>%25</span><span class='tstring_end'>&quot;</span></span>

    <span class='id identifier rubyid_coverage_badge'>coverage_badge</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&lt;a href=&#39;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_base_url'>results_base_url</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>.html&#39;&gt;![Coverage Badge](http://img.shields.io/badge/coverage%20status-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_cov_str'>cov_str</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_cov_color'>cov_color</span><span class='embexpr_end'>}</span><span class='tstring_content'>.png)&lt;/a&gt;</span><span class='tstring_end'>&quot;</span></span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_github_status'>github_status</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='id identifier rubyid_pending'>pending</span>
                    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>pending</span><span class='tstring_end'>&#39;</span></span>
                  <span class='kw'>elsif</span> <span class='id identifier rubyid_build_failed'>build_failed</span> <span class='op'>||</span> <span class='id identifier rubyid_test_failed'>test_failed</span> <span class='op'>||</span> <span class='id identifier rubyid_cov_failed'>cov_failed</span> <span class='op'>||</span> <span class='op'>!</span><span class='ivar'>@failure</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
                    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>failure</span><span class='tstring_end'>&#39;</span></span>
                  <span class='kw'>else</span>
                    <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>success</span><span class='tstring_end'>&#39;</span></span>
                  <span class='kw'>end</span>

  <span class='id identifier rubyid_github_status_message'>github_status_message</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='id identifier rubyid_pending'>pending</span>
                            <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Build Pending</span><span class='tstring_end'>&#39;</span></span>
                          <span class='kw'>elsif</span> <span class='id identifier rubyid_build_failed'>build_failed</span>
                            <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Build Failed</span><span class='tstring_end'>&#39;</span></span>
                          <span class='kw'>elsif</span> <span class='id identifier rubyid_test_failed'>test_failed</span>
                            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Tests Failed (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_results_passed'>test_results_passed</span><span class='embexpr_end'>}</span><span class='tstring_content'> of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_results_total'>test_results_total</span><span class='embexpr_end'>}</span><span class='tstring_content'> tests passed, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_results_warning'>test_results_warning</span><span class='embexpr_end'>}</span><span class='tstring_content'> test warnings)</span><span class='tstring_end'>&quot;</span></span>
                          <span class='kw'>elsif</span> <span class='id identifier rubyid_cov_failed'>cov_failed</span>
                            <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Coverage Too Low</span><span class='tstring_end'>&#39;</span></span>
                          <span class='kw'>else</span>
                            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>OK (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_results_passed'>test_results_passed</span><span class='embexpr_end'>}</span><span class='tstring_content'> of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_results_total'>test_results_total</span><span class='embexpr_end'>}</span><span class='tstring_content'> tests passed, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_results_warning'>test_results_warning</span><span class='embexpr_end'>}</span><span class='tstring_content'> test warnings)</span><span class='tstring_end'>&quot;</span></span>
                          <span class='kw'>end</span>

  <span class='id identifier rubyid_message_counts'>message_counts</span> <span class='op'>=</span> <span class='const'>Hash</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='int'>0</span><span class='rparen'>)</span>
  <span class='ivar'>@test_messages</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_x'>x</span><span class='op'>|</span> <span class='id identifier rubyid_message_counts'>message_counts</span><span class='lbracket'>[</span><span class='id identifier rubyid_x'>x</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='rbracket'>]</span> <span class='op'>+=</span> <span class='int'>1</span> <span class='rbrace'>}</span>

  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Message counts loaded: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_message_counts'>message_counts</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>

  <span class='id identifier rubyid_message_counts_str'>message_counts_str</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
  <span class='id identifier rubyid_message_counts'>message_counts</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_message'>message</span><span class='comma'>,</span> <span class='id identifier rubyid_count'>count</span><span class='op'>|</span>
    <span class='id identifier rubyid_message_counts_str'>message_counts_str</span> <span class='op'>+=</span> <span class='kw'>if</span> <span class='id identifier rubyid_count'>count</span> <span class='op'>&gt;</span> <span class='int'>1</span>
                            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> * </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_count'>count</span><span class='embexpr_end'>}</span><span class='tstring_content'> tests had: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_message'>message</span><span class='embexpr_end'>}</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span>
                          <span class='kw'>else</span>
                            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> * 1 test had: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_message'>message</span><span class='embexpr_end'>}</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span>
                          <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Message counts string: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_message_counts_str'>message_counts_str</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>

  <span class='id identifier rubyid_test_failures_counts_str'>test_failures_counts_str</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
  <span class='id identifier rubyid_test_results_failure_counts'>test_results_failure_counts</span><span class='period'>.</span><span class='id identifier rubyid_sort'>sort</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_a'>a</span><span class='comma'>,</span> <span class='id identifier rubyid_b'>b</span><span class='op'>|</span> <span class='id identifier rubyid_a'>a</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_casecmp'>casecmp</span><span class='lparen'>(</span><span class='id identifier rubyid_b'>b</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_category'>category</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span>
    <span class='kw'>next</span> <span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>&lt;=</span> <span class='int'>1</span>

    <span class='id identifier rubyid_test_failures_counts_str'>test_failures_counts_str</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_category'>category</span><span class='embexpr_end'>}</span><span class='tstring_content'> Test Summary\n</span><span class='tstring_end'>&quot;</span></span>
    <span class='id identifier rubyid_sorted_values'>sorted_values</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_sort'>sort</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_a'>a</span><span class='comma'>,</span> <span class='id identifier rubyid_b'>b</span><span class='op'>|</span>
      <span class='kw'>if</span> <span class='id identifier rubyid_a'>a</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Passed</span><span class='tstring_end'>&#39;</span></span>
        <span class='op'>-</span><span class='int'>1</span>
      <span class='kw'>else</span>
        <span class='id identifier rubyid_b'>b</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Passed</span><span class='tstring_end'>&#39;</span></span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='id identifier rubyid_a'>a</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_casecmp'>casecmp</span><span class='lparen'>(</span><span class='id identifier rubyid_b'>b</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rparen'>)</span>
      <span class='kw'>end</span>
    <span class='kw'>end</span>
    <span class='id identifier rubyid_sorted_values'>sorted_values</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_failure'>failure</span><span class='comma'>,</span> <span class='id identifier rubyid_count'>count</span><span class='op'>|</span>
      <span class='id identifier rubyid_test_failures_counts_str'>test_failures_counts_str</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> * </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_failure'>failure</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_count'>count</span><span class='embexpr_end'>}</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='id identifier rubyid_github_document'>github_document</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='ivar'>@failure</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
                      <span class='heredoc_beg'>&lt;&lt;-GIT</span>
<span class='embexpr_beg'>#{</span><span class='ivar'>@refspec</span><span class='embexpr_end'>}</span><span class='tstring_content'> (</span><span class='embexpr_beg'>#{</span><span class='ivar'>@author</span><span class='embexpr_end'>}</span><span class='tstring_content'>) - </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_device_id'>device_id</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_github_status_message'>github_status_message</span><span class='embexpr_end'>}</span><span class='tstring_content'>

</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_message_counts_str'>message_counts_str</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='op'>?</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Messages:\n</span><span class='tstring_end'>&#39;</span></span><span class='embexpr_end'>}</span><span class='tstring_content'>
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_message_counts_str'>message_counts_str</span><span class='embexpr_end'>}</span><span class='tstring_content'>
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_failures_counts_str'>test_failures_counts_str</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='op'>?</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Failures:\n</span><span class='tstring_end'>&#39;</span></span><span class='embexpr_end'>}</span><span class='tstring_content'>
</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_failures_counts_str'>test_failures_counts_str</span><span class='embexpr_end'>}</span><span class='tstring_content'>

</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_badge'>build_badge</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_test_badge'>test_badge</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_coverage_badge'>coverage_badge</span><span class='embexpr_end'>}</span><span class='tstring_content'>
</span><span class='heredoc_end'>                      GIT
</span>                    <span class='kw'>else</span>
                      <span class='heredoc_beg'>&lt;&lt;-GIT</span>
<span class='tstring_content'>&lt;a href=&#39;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_base_url'>results_base_url</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>.html&#39;&gt;Unhandled Failure&lt;/a&gt;
</span><span class='heredoc_end'>                      GIT
</span>                    <span class='kw'>end</span>

  <span class='kw'>if</span> <span class='ivar'>@test_run</span>
    <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@dateprefix</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_results_file_name'>results_file_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>w+</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span> <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_write'>write</span><span class='lparen'>(</span><span class='id identifier rubyid_json_document'>json_document</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
    <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@dateprefix</span><span class='embexpr_end'>}</span><span class='tstring_content'>-COMMENT-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_results_file_name'>results_file_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>w+</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span> <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_write'>write</span><span class='lparen'>(</span><span class='id identifier rubyid_github_document'>github_document</span><span class='rparen'>)</span> <span class='rbrace'>}</span>

  <span class='kw'>else</span>
    <span class='kw'>begin</span>
      <span class='kw'>if</span> <span class='id identifier rubyid_pending'>pending</span>
        <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Posting pending results file</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
        <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='kw'>do</span>
          <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_create_contents'>create_contents</span><span class='lparen'>(</span>
            <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_repository'>results_repository</span><span class='comma'>,</span>
            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_path'>results_path</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_this_branch_folder'>this_branch_folder</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='ivar'>@dateprefix</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_results_file_name'>results_file_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='const'>Socket</span><span class='period'>.</span><span class='id identifier rubyid_gethostname'>gethostname</span><span class='embexpr_end'>}</span><span class='tstring_content'>: Commit initial build results file: </span><span class='embexpr_beg'>#{</span><span class='ivar'>@dateprefix</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_results_file_name'>results_file_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
            <span class='id identifier rubyid_json_document'>json_document</span>
          <span class='rparen'>)</span>
        <span class='kw'>end</span>

        <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Results document sha set: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_content'>content</span><span class='period'>.</span><span class='id identifier rubyid_sha'>sha</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
        <span class='ivar'>@results_document_sha</span> <span class='op'>=</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_content'>content</span><span class='period'>.</span><span class='id identifier rubyid_sha'>sha</span>
      <span class='kw'>else</span>
        <span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Error, no prior results document sha set</span><span class='tstring_end'>&#39;</span></span> <span class='kw'>if</span> <span class='ivar'>@results_document_sha</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

        <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Updating contents with sha </span><span class='embexpr_beg'>#{</span><span class='ivar'>@results_document_sha</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
        <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='kw'>do</span>
          <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_update_contents'>update_contents</span><span class='lparen'>(</span>
            <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_repository'>results_repository</span><span class='comma'>,</span>
            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_path'>results_path</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_this_branch_folder'>this_branch_folder</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='ivar'>@dateprefix</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_results_file_name'>results_file_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
            <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='const'>Socket</span><span class='period'>.</span><span class='id identifier rubyid_gethostname'>gethostname</span><span class='embexpr_end'>}</span><span class='tstring_content'>: Commit final build results file: </span><span class='embexpr_beg'>#{</span><span class='ivar'>@dateprefix</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_results_file_name'>results_file_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
            <span class='ivar'>@results_document_sha</span><span class='comma'>,</span>
            <span class='id identifier rubyid_json_document'>json_document</span>
          <span class='rparen'>)</span>
        <span class='kw'>end</span>
      <span class='kw'>end</span>
    <span class='kw'>rescue</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
      <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error creating / updating results contents file: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
      <span class='id identifier rubyid_raise'>raise</span> <span class='id identifier rubyid_e'>e</span>
    <span class='kw'>end</span>

    <span class='kw'>if</span> <span class='op'>!</span><span class='id identifier rubyid_pending'>pending</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_post_results_comment'>post_results_comment</span>
      <span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@commit_sha</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@repository</span> <span class='op'>==</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository'>repository</span>
        <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_create_commit_comment'>create_commit_comment</span><span class='lparen'>(</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository'>repository</span><span class='comma'>,</span> <span class='ivar'>@commit_sha</span><span class='comma'>,</span> <span class='id identifier rubyid_github_document'>github_document</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
      <span class='kw'>elsif</span> <span class='op'>!</span><span class='ivar'>@pull_id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
        <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_add_comment'>add_comment</span><span class='lparen'>(</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository'>repository</span><span class='comma'>,</span> <span class='ivar'>@pull_id</span><span class='comma'>,</span> <span class='id identifier rubyid_github_document'>github_document</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
      <span class='kw'>end</span>
    <span class='kw'>end</span>

    <span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@commit_sha</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_post_results_status'>post_results_status</span>
      <span class='kw'>if</span> <span class='ivar'>@pull_request_base_repository</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
        <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='kw'>do</span>
          <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_create_status'>create_status</span><span class='lparen'>(</span>
            <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository'>repository</span><span class='comma'>,</span>
            <span class='ivar'>@commit_sha</span><span class='comma'>,</span>
            <span class='id identifier rubyid_github_status'>github_status</span><span class='comma'>,</span>
            <span class='symbol'>:context</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_device_id'>device_id</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='symbol'>:target_url</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_base_url'>results_base_url</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>.html</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='symbol'>:description</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_github_status_message'>github_status_message</span>
          <span class='rparen'>)</span>
        <span class='kw'>end</span>
      <span class='kw'>else</span>
        <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='kw'>do</span>
          <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_create_status'>create_status</span><span class='lparen'>(</span>
            <span class='ivar'>@pull_request_base_repository</span><span class='comma'>,</span>
            <span class='ivar'>@commit_sha</span><span class='comma'>,</span>
            <span class='id identifier rubyid_github_status'>github_status</span><span class='comma'>,</span>
            <span class='symbol'>:context</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_device_id'>device_id</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='symbol'>:target_url</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_results_base_url'>results_base_url</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>.html</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='symbol'>:description</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_github_status_message'>github_status_message</span>
          <span class='rparen'>)</span>
        <span class='kw'>end</span>
      <span class='kw'>end</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="pull_request?-instance_method">
  
    #<strong>pull_request?</strong>  &#x21d2; <tt>Boolean</tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    

  </div>
</div>
<div class="tags">
  
<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt>Boolean</tt>)</span>
      
      
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


105
106
107</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 105</span>

<span class='kw'>def</span> <span class='id identifier rubyid_pull_request?'>pull_request?</span>
  <span class='op'>!</span><span class='ivar'>@pull_id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="release?-instance_method">
  
    #<strong>release?</strong>  &#x21d2; <tt>Boolean</tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    

  </div>
</div>
<div class="tags">
  
<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt>Boolean</tt>)</span>
      
      
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


101
102
103</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 101</span>

<span class='kw'>def</span> <span class='id identifier rubyid_release?'>release?</span>
  <span class='op'>!</span><span class='ivar'>@release_url</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="results_file_name-instance_method">
  
    #<strong>results_file_name</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


124
125
126</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 124</span>

<span class='kw'>def</span> <span class='id identifier rubyid_results_file_name'>results_file_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_build_base_name'>build_base_name</span> <span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>-results.html</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="set_as_baseline-instance_method">
  
    #<strong>set_as_baseline</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


89
90
91</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 89</span>

<span class='kw'>def</span> <span class='id identifier rubyid_set_as_baseline'>set_as_baseline</span>
  <span class='ivar'>@acting_as_baseline</span> <span class='op'>=</span> <span class='kw'>true</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="short_build_base_name-instance_method">
  
    #<strong>short_build_base_name</strong>(compiler)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


128
129
130</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 128</span>

<span class='kw'>def</span> <span class='id identifier rubyid_short_build_base_name'>short_build_base_name</span><span class='lparen'>(</span><span class='id identifier rubyid_compiler'>compiler</span><span class='rparen'>)</span>
  <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_repository_name'>repository_name</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='lbracket'>[</span><span class='symbol'>:architecture</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_os'>os</span><span class='embexpr_end'>}</span><span class='tstring_content'>-</span><span class='embexpr_beg'>#{</span><span class='ivar'>@buildid</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="this_branch_folder-instance_method">
  
    #<strong>this_branch_folder</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


255
256
257
258
259
260
261</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 255</span>

<span class='kw'>def</span> <span class='id identifier rubyid_this_branch_folder'>this_branch_folder</span>
  <span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@tag_name</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@tag_name</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
    <span class='id identifier rubyid_add_dashes'>add_dashes</span><span class='lparen'>(</span><span class='id identifier rubyid_get_short_form'>get_short_form</span><span class='lparen'>(</span><span class='ivar'>@tag_name</span><span class='rparen'>)</span><span class='rparen'>)</span>
  <span class='kw'>else</span>
    <span class='id identifier rubyid_add_dashes'>add_dashes</span><span class='lparen'>(</span><span class='id identifier rubyid_get_short_form'>get_short_form</span><span class='lparen'>(</span><span class='ivar'>@branch_name</span><span class='rparen'>)</span><span class='rparen'>)</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="this_build_dir-instance_method">
  
    #<strong>this_build_dir</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


275
276
277</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 275</span>

<span class='kw'>def</span> <span class='id identifier rubyid_this_build_dir'>this_build_dir</span>
  <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='id identifier rubyid_this_src_dir'>this_src_dir</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>build</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="this_regression_dir-instance_method">
  
    #<strong>this_regression_dir</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


279
280
281</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 279</span>

<span class='kw'>def</span> <span class='id identifier rubyid_this_regression_dir'>this_regression_dir</span>
  <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='const'>Dir</span><span class='period'>.</span><span class='id identifier rubyid_pwd'>pwd</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>clone_regressions</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="this_src_dir-instance_method">
  
    #<strong>this_src_dir</strong>  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


267
268
269
270
271
272
273</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 267</span>

<span class='kw'>def</span> <span class='id identifier rubyid_this_src_dir'>this_src_dir</span>
  <span class='kw'>if</span> <span class='ivar'>@acting_as_baseline</span>
    <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='const'>Dir</span><span class='period'>.</span><span class='id identifier rubyid_pwd'>pwd</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>clone_baseline</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
  <span class='kw'>else</span>
    <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='const'>Dir</span><span class='period'>.</span><span class='id identifier rubyid_pwd'>pwd</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>clone_branch</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="try_to_repost_asset-instance_method">
  
    #<strong>try_to_repost_asset</strong>(response, asset_name)  &#x21d2; <tt>Object</tt> 
  

  

  
</h3><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/potentialbuild.rb', line 539</span>

<span class='kw'>def</span> <span class='id identifier rubyid_try_to_repost_asset'>try_to_repost_asset</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='comma'>,</span> <span class='id identifier rubyid_asset_name'>asset_name</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_asset_url'>asset_url</span> <span class='op'>=</span> <span class='kw'>nil</span>

  <span class='kw'>if</span> <span class='op'>!</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_state'>state</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>new</span><span class='tstring_end'>&#39;</span></span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error uploading asset </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_asset_url'>asset_url</span> <span class='op'>=</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span>
  <span class='kw'>end</span>

  <span class='kw'>if</span> <span class='id identifier rubyid_asset_url'>asset_url</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>nil response, attempting to find release url</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
    <span class='id identifier rubyid_assets'>assets</span> <span class='op'>=</span> <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_release_assets'>release_assets</span><span class='lparen'>(</span><span class='ivar'>@release_url</span><span class='rparen'>)</span> <span class='rbrace'>}</span>

    <span class='id identifier rubyid_assets'>assets</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_a'>a</span><span class='op'>|</span>
      <span class='kw'>if</span> <span class='id identifier rubyid_a'>a</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span> <span class='op'>==</span> <span class='id identifier rubyid_asset_name'>asset_name</span>
        <span class='id identifier rubyid_asset_url'>asset_url</span> <span class='op'>=</span> <span class='id identifier rubyid_a'>a</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span>
        <span class='kw'>break</span>
      <span class='kw'>end</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='kw'>return</span> <span class='kw'>if</span> <span class='id identifier rubyid_asset_url'>asset_url</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>

  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Found release url in list of assets: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_asset_url'>asset_url</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
  <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Deleting existing asset_url and trying again </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_asset_url'>asset_url</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
  <span class='ivar'>@package_results</span> <span class='op'>&lt;&lt;</span> <span class='const'><span class='object_link'><a href="CodeMessage.html" title="CodeMessage (class)">CodeMessage</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="CodeMessage.html#initialize-instance_method" title="CodeMessage#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>CMakeLists.txt</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='int'>1</span><span class='comma'>,</span> <span class='int'>0</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>warning</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error attempting to upload release asset, deleting and trying again. </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_asset_url'>asset_url</span><span class='embexpr_end'>}</span><span class='tstring_content'>\nDuring attempt </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_try_num'>try_num</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
  <span class='kw'>begin</span>
    <span class='id identifier rubyid_github_query'><span class='object_link'><a href="top-level-namespace.html#github_query-instance_method" title="#github_query (method)">github_query</a></span></span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='ivar'>@client</span><span class='period'>.</span><span class='id identifier rubyid_delete_release_asset'>delete_release_asset</span><span class='lparen'>(</span><span class='id identifier rubyid_asset_url'>asset_url</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
  <span class='kw'>rescue</span>
    <span class='gvar'>$logger</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error deleting failed asset, continuing to next try </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
    <span class='ivar'>@package_results</span> <span class='op'>&lt;&lt;</span> <span class='const'><span class='object_link'><a href="CodeMessage.html" title="CodeMessage (class)">CodeMessage</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="CodeMessage.html#initialize-instance_method" title="CodeMessage#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>CMakeLists.txt</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='int'>1</span><span class='comma'>,</span> <span class='int'>0</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>warning</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error attempting to delete failed release asset upload.\nDuring attempt </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_try_num'>try_num</span><span class='embexpr_end'>}</span><span class='tstring_content'>\nRelease asset </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
  </div>

</div>

      <div id="footer">
  Generated on Thu May 18 10:35:00 2023 by
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
  0.9.19 (ruby-2.7.0).
</div>

    </div>
  </body>
</html>