<p dir="ltr">The first thing we would have to do to improve the test system is provide for an automatic  detection of test failure without too many false positives. The current diff-based setup is not adequate.</p>
<p dir="ltr">MOOSE, for example, uses exodiff to compare the output of the tests to a "gold standard" in the Exodus II format.<br>
This allows them to tolerate inconsequential mesh renumberings and  floating point errors (discrepancies) to a given tolerance. We currently depend on matching convergence histories.</p>
<p dir="ltr">Note also that pull requests (at least on GitHub) will be automatically updated - and trigger a fresh continuous integration test event - when new commits are pushed to the branch being merged.</p>
<p dir="ltr">I think the automatic test can, in principle, make a temp copy of next, merge the feature branch into 'next-tmp', and discard the result at the end of the test. That way 'next' isn't polluted with failed PR attempts. Not clear how to adapt this to nighlies and multiple outstanding PRs, though. Merge all the  outstanding PRs into a fresh 'next-nightly' every night?</p>
<p dir="ltr">D.</p>
<div class="gmail_quot<blockquote class=" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Satish Balay <<a href="mailto:balay@mcs.anl.gov">balay@mcs.anl.gov</a>> writes:<br>
> I guess another alternative for these veryfew feature branches<br>
> that need to iterate over nightlytest suites is:<br>
><br>
> - never merge feature branch to next untile its complete<br>
> - switch master or next nightlytest to feature branch [for a few days]<br>
> - fix rebase feature branch as needed.<br>
<br>
If we had a continuous integration system, the mere act of creating a<br>
pull request could spawn the builds on many architectures and give us<br>
the results.  MOOSE does this with moosebuild and a zillion project do<br>
it with Travis-CI, Jenkins, etc.<br>
<br>
It would be useful, but requires test system improvements.<br>
</div>