Index: ../trunk-jpl/packagers/linux/package-issm-linux-binaries-solid_earth.sh =================================================================== --- ../trunk-jpl/packagers/linux/package-issm-linux-binaries-solid_earth.sh (revision 25300) +++ ../trunk-jpl/packagers/linux/package-issm-linux-binaries-solid_earth.sh (revision 25301) @@ -96,7 +96,7 @@ # Check that MATLAB did not exit in error matlabExitCode=`echo $?` -matlabExitedInError=`grep -E "Activation cannot proceed|license|Error" matlab.log | wc -l` +matlabExitedInError=`grep -E "Error|Standard exception|Traceback|bad interpreter" matlab.log | wc -l` if [[ ${matlabExitCode} -ne 0 || ${matlabExitedInError} -ne 0 ]]; then echo "----------MATLAB exited in error!----------" Index: ../trunk-jpl/packagers/linux/package-issm-linux-binaries-with_dakota.sh =================================================================== --- ../trunk-jpl/packagers/linux/package-issm-linux-binaries-with_dakota.sh (revision 25300) +++ ../trunk-jpl/packagers/linux/package-issm-linux-binaries-with_dakota.sh (revision 25301) @@ -106,7 +106,7 @@ # Check that Python did not exit in error pythonExitCode=`echo $?` -pythonExitedInError=`grep -E "Error|Traceback|bad interpreter" python.log | wc -l` +pythonExitedInError=`grep -E "Error|Standard exception|Traceback|bad interpreter" python.log | wc -l` if [[ ${pythonExitCode} -ne 0 || ${pythonExitedInError} -ne 0 ]]; then echo "----------Python exited in error!----------" Index: ../trunk-jpl/packagers/mac/package-issm-mac-binaries-solid_earth.sh =================================================================== --- ../trunk-jpl/packagers/mac/package-issm-mac-binaries-solid_earth.sh (revision 25300) +++ ../trunk-jpl/packagers/mac/package-issm-mac-binaries-solid_earth.sh (revision 25301) @@ -126,7 +126,7 @@ # Check that Python did not exit in error pythonExitCode=`echo $?` -pythonExitedInError=`grep -E "Error|Traceback|bad interpreter" python.log | wc -l` +pythonExitedInError=`grep -E "Error|Standard exception|Traceback|bad interpreter" python.log | wc -l` if [[ ${pythonExitCode} -ne 0 || ${pythonExitedInError} -ne 0 ]]; then echo "----------Python exited in error!----------" Index: ../trunk-jpl/packagers/mac/package-issm-mac-binaries-with_dakota.sh =================================================================== --- ../trunk-jpl/packagers/mac/package-issm-mac-binaries-with_dakota.sh (revision 25300) +++ ../trunk-jpl/packagers/mac/package-issm-mac-binaries-with_dakota.sh (revision 25301) @@ -100,7 +100,7 @@ # Check that Python did not exit in error pythonExitCode=`echo $?` -pythonExitedInError=`grep -E "Error|Traceback|bad interpreter" python.log | wc -l` +pythonExitedInError=`grep -E "Error|Standard exception|Traceback|bad interpreter" python.log | wc -l` if [[ ${pythonExitCode} -ne 0 || ${pythonExitedInError} -ne 0 ]]; then echo "----------Python exited in error!----------" Index: ../trunk-jpl/jenkins/jenkins.sh =================================================================== --- ../trunk-jpl/jenkins/jenkins.sh (revision 25300) +++ ../trunk-jpl/jenkins/jenkins.sh (revision 25301) @@ -574,7 +574,7 @@ done # Check that Python did not exit in error - pythonExitedInError=`grep -E "Error|Traceback|bad interpreter" python_log.log | wc -l` + pythonExitedInError=`grep -E "Error|Standard exception|Traceback|bad interpreter" python_log.log | wc -l` if [ $pythonExitedInError -ne 0 ] then Index: ../trunk-jpl/test/NightlyRun/runme.py =================================================================== --- ../trunk-jpl/test/NightlyRun/runme.py (revision 25300) +++ ../trunk-jpl/test/NightlyRun/runme.py (revision 25301) @@ -60,7 +60,9 @@ runme(id = [[101, 102], ['Dakota', 'Slr']]) TODO: - - At '#disp test result', make sure precision of output matches + - At '#disp test result', make sure precision of output matches that of + MATLAB. + - Check for failures that do not raise exceptions (for example, 'Standard exception'; see also jenkins/jenkins.sh). These should be counted as failures. """ #Get ISSM_DIR variable ISSM_DIR = os.environ['ISSM_DIR'] @@ -200,6 +202,8 @@ print(('ERROR difference: {:7.2g} > {:7.2g} test id: {} test name: {} field: {}'.format(error_diff, tolerance, id, id_string, fieldname))) errorcount += 1 erroredtest_list.append(id) + elif : + print('FAILURE') else: print(('SUCCESS difference: {:7.2g} < {:7.2g} test id: {} test name: {} field: {}'.format(error_diff, tolerance, id, id_string, fieldname))) Index: ../trunk-jpl/src/m/solve/WriteData.py =================================================================== --- ../trunk-jpl/src/m/solve/WriteData.py (revision 25300) +++ ../trunk-jpl/src/m/solve/WriteData.py (revision 25301) @@ -39,9 +39,15 @@ # data = full(data) # end - # Always make a copy of the the data so that we do not accidently overwrite - # any model fields. - data = deepcopy(data) + # Make a copy of the the data so that we do not accidently overwrite any + # model fields. + # + # NOTE: This is a temporary fix to get builds green in Jenkins: without it, + # there still exists a bug wherein model fields are being modified + # (see https://ross.ics.uci.edu/jenkins/view/All/job/Debian_Linux-Python/1036). + # + if mattype != 0: + data = deepcopy(data) #Scale data if necesarry if options.exist('scale'):