Author: bugman Date: Wed May 30 17:04:53 2012 New Revision: 16530 URL: http://svn.gna.org/viewcvs/relax?rev=16530&view=rev Log: Complete redesign and creation of the 2nd version of the relax XML format for save and results files. This is a BIG set of changes! It includes the following: - The XML files now have the new 'file_version' attribute within the 'relax' XML element. This is now set to '2', and if unset it is assumed that the file version should be 1. - The file_version integer value is now propagated through all of the from_xml() methods so it can be passed into the data.relax_xml.xml_to_object() function. This prevents a mixture of v1 and v2 being assumed for different parts of the XML. - An XML namespace fix - the xmlns="http://www.nmr-relax.com" attribute is now finally visible. - The data.relax_xml.object_to_xml() function has been added for creating the new relax XML syntax. This will handle and convert many more basic Python object types into IEEE-754 byte arrays, for example lists and dictionaries of floats, or numpy vectors and matrices. This function is now used throughout the code base for converting Python objects to XML. - The data.relax_xml.xml_to_object() function has been expanded to match the functionality of data.relax_xml.object_to_xml(). - The Python object XML elements now have the 'type' attribute indicating the Python object type. This is important for the processing of the file, especially for handling all types of numpy structures. - The Python object value is now stored in a sub XML element called '<value>'. If it is a float, or is a simple type which contains floats, then the sub XML element <ieee_754_byte_array> is created for storing a full precision version of the floats. The <ieee_754_byte_array> value will always trump the <value> value! - The v1 and v2 of the format together with the pre- and post-Python 2.7.3 XML toprettyxml() changes are now represented as test_suite/shared_data/model_free/OMP/final_results_trunc_1.3*.bz2 files. A 5th file is added to test the IEEE-754 conversions by corrupting many of the floats. Each results file is tested with 5 new model-free system tests. Added: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_pre_py2.7.3_v1.bz2 - copied unchanged from r16529, branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3.bz2 branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_pre_py2.7.3_v2.bz2 (with props) branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v1.bz2 - copied, changed from r16529, branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_new.bz2 branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v2.bz2 (with props) branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v2_broken.bz2 (with props) Removed: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3.bz2 branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_new.bz2 Modified: branches/uf_redesign/data/__init__.py branches/uf_redesign/data/align_tensor.py branches/uf_redesign/data/data_classes.py branches/uf_redesign/data/diff_tensor.py branches/uf_redesign/data/gui.py branches/uf_redesign/data/mol_res_spin.py branches/uf_redesign/data/pipe_container.py branches/uf_redesign/data/relax_xml.py branches/uf_redesign/generic_fns/structure/api_base.py branches/uf_redesign/generic_fns/structure/internal.py branches/uf_redesign/generic_fns/structure/scientific.py branches/uf_redesign/test_suite/system_tests/model_elimination.py branches/uf_redesign/test_suite/system_tests/model_free.py branches/uf_redesign/test_suite/system_tests/scripts/bmrb_rw.py branches/uf_redesign/test_suite/system_tests/scripts/model_free/latex_mf_table.py branches/uf_redesign/test_suite/system_tests/scripts/model_free/omp_model_free.py branches/uf_redesign/test_suite/system_tests/scripts/palmer_omp.py branches/uf_redesign/test_suite/unit_tests/_specific_fns/_model_free/test_main.py [This mail would be too long, it was shortened to contain the URLs only.] Modified: branches/uf_redesign/data/__init__.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/__init__.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/data/align_tensor.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/align_tensor.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/data/data_classes.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/data_classes.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/data/diff_tensor.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/diff_tensor.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/data/gui.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/gui.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/data/mol_res_spin.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/mol_res_spin.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/data/pipe_container.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/pipe_container.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/data/relax_xml.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/data/relax_xml.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/generic_fns/structure/api_base.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/generic_fns/structure/api_base.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/generic_fns/structure/internal.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/generic_fns/structure/internal.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/generic_fns/structure/scientific.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/generic_fns/structure/scientific.py?rev=16530&r1=16529&r2=16530&view=diff Removed: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3.bz2 URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3.bz2?rev=16529&view=auto Removed: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_new.bz2 URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_new.bz2?rev=16529&view=auto Added: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_pre_py2.7.3_v2.bz2 URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_pre_py2.7.3_v2.bz2?rev=16530&view=auto Copied: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v1.bz2 (from r16529, branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_new.bz2) URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v1.bz2?p2=branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v1.bz2&p1=branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_new.bz2&r1=16529&r2=16530&rev=16530&view=diff Added: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v2.bz2 URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v2.bz2?rev=16530&view=auto Added: branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v2_broken.bz2 URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/shared_data/model_free/OMP/final_results_trunc_1.3_v2_broken.bz2?rev=16530&view=auto Modified: branches/uf_redesign/test_suite/system_tests/model_elimination.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/system_tests/model_elimination.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/test_suite/system_tests/model_free.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/system_tests/model_free.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/test_suite/system_tests/scripts/bmrb_rw.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/system_tests/scripts/bmrb_rw.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/test_suite/system_tests/scripts/model_free/latex_mf_table.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/system_tests/scripts/model_free/latex_mf_table.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/test_suite/system_tests/scripts/model_free/omp_model_free.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/system_tests/scripts/model_free/omp_model_free.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/test_suite/system_tests/scripts/palmer_omp.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/system_tests/scripts/palmer_omp.py?rev=16530&r1=16529&r2=16530&view=diff Modified: branches/uf_redesign/test_suite/unit_tests/_specific_fns/_model_free/test_main.py URL: http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/unit_tests/_specific_fns/_model_free/test_main.py?rev=16530&r1=16529&r2=16530&view=diff