* Fix for the setting of the diffusion tensor parameter errors in the model-free specific analysis code.
* Fix for the setup of the model-free Monte Carlo simulations for the new diffusion tensor design.
* Another fix for the [http://www.nmr-relax.com/manual/diffusion_tensor.init user function ] - it was not completely converted.
* Fix for the fixing of parameters in the model-free analyses. The diffusion tensor set_fixed() method is now used.
* Fix for the XML output of the diffusion tensor - only the modifiable parameters are output. This was the previous behaviour and is needed for the test suite to pass.
* Converted the [http://www.nmr-relax.com/manual/palmer.extract user function ] to use the new diffusion tensor design.
* The diffusion tensor bmrb_read() function now uses the set_fixed() method instead of fixed().
* The [http://www.nmr-relax.com/manual/fix user function ] now uses the diffusion tensor set_fixed() method.
* Renamed the diffusion tensor fixed() method to set_fixed() to avoid clashing with the 'fixed' object.
* Fix for the model-free specific analysis duplicate_data() method for the new design. The diffusion tensor __mod_attr__ object is now called _mod_attr.
* Python 3 fix for the relax_io.open_write_file() function. This now matches the behaviour of open_read_file() in that there are three different behaviours for opening bz2 and gz files for writing to for the different Python versions (one for Python 2, one for Python 3.0 to 3.2, and one for Python 3.3+). All byte streams have been eliminated as open_write_file() is for creating text files.
* Python 3 fix for the Noe.test_noe_analysis() system test for the grace.write precision changes.
* For consistency between Python 2 and 3, the [http://www.nmr-relax.com/manual/grace.write user function ] outputs to 15 decimal places. This increased precision will only be of use in the relax test suite.
* Python 3 fix for the Pipes.test_pipe_bundle() system test. The order of bundle names returned by generic_fns.pipes.bundle_names() is not guaranteed in Python 3.
* The C module compilation testing script now accepts the Python version as a first argument.
* Python 3 fix for the user function docstring creation in the prompt UI mode. Again this is the problem of a division now returning a float rather than an int.
* Python 3 bug fix for the N-state model target function setup. The num_tensors variable needs to be an integer, but the Python 3 division will create a float type.
* Python 3 fix for the [http://www.nmr-relax.com/manual/results.read user function ] matching that of state.load.
* Python 3 bug fix for the relax_io.read_spin_data() function. The built in max() function cannot handle the value of None, therefore the filter() function is used to remove all instances of None from the list.
* Python 3 bug fix for the [http://www.nmr-relax.com/manual/state.load user function]. The header line of pickled states (rather than the standard XML states) is of the b'' byte format. This is now converted to a string, and the search expression is comparing it to the raw string r"<\?xml".
* Better support for both Python 2 and 3 in the relax data store. The 2to3 script was used on all of the files in the data package.
* Python 3 preparation - the relax data store (the data package) now supports both Python 2 and 3.
* Removed all of the xrange() calls from the system tests as these are not necessary. This is in preparation for Python 3.
* Some changes in preparation for Python 3.
* Removed the 'force flag' text from the RelaxWarning messages output by the [http://www.nmr-relax.com/manual/bruker.read user function]. The force flag arguments of the generic_fns.mol_res_spin.name_spin() and generic_fns.mol_res_spin.set_spin_isotope() functions can now be set to None to suppress the text.
* Fixes for the checks in the Mf.test_mf_auto_analysis() GUI test for the recent test suite data changes.
* The CSA setting in the model-free auto GUI analysis now defaults to the '@N*' spin ID. Previously no spin ID was being used so that the protons where also having their CSA values set to that of the nitrogens. Now the execution checking code skips the proton CSA check.
* Fix for the comment on the 'Export' button in the BMRB export window.
* Lots of editing of the model-free GUI section of the user manual.
* Fix for the Relax_data.test_delete system test for the changes to the [http://www.nmr-relax.com/manual/relax_data.read user function].* Fix for the Relax_data.test_read unit tests for the [http://www.nmr-relax.com/manual/relax_data.read user function ] changes.* Fix to the Dasha system test needed for the changes to the [http://www.nmr-relax.com/manual/relax_data.read user function].
* Fix for the N_state_model.test_monte_carlo_sims due to the changed sphere.pdb test suite file.
* Relaxation data is no longer loaded by relax_data.read if the values and errors are both None.
* Fix for [https://gna.org/bugs/?20210 bug #20210] - relax now runs again without having wxPython installed.
* Bug fix for the BMRB system test initialisation for when the bmrblib module is missing. The base __init__() method needs to be initialised first.
* Fix for [https://gna.org/bugs/?20201 bug #20201]. The [http://www.nmr-relax.com/manual/bruker.read user function ] can now handle the situation where multiple spins per residue are already loaded prior to the user function call. The isotope value from the DC file is now translated to the element name and this is used as part of the spin ID string.
* Fix for [https://gna.org/bugs/?20197 bug #20197 - the PyMOL and Molmol macro failure]. The macro creation now only operates on spins called 'N' and assumes these are the backbone nitrogens. The sidechain tryptophan indole NH data will need to be detected and added later.
* Fix for [https://gna.org/bugs/?20198 bug #20198 - the relaxation data back-calculation error]. The problem was that the call to the model-free overfit_deselect() method was deselecting any spins lacking relaxation data. This should not happen, as no spins need to have relaxation data for this calculation.