If you have been following the relax-commits mailing list (https://mail.gna.org/public/relax-commits/), you may have noticed that a large restructuring of the core of relax has occurred. These changes are so extensive that, once merged, I plan on incrementing the major version number to 2.0 and releasing relax 2.0.0. It is also about time that a new major version was released, as the last change - the creation of the 1.3 line - occurred 6 years ago (see https://mail.gna.org/public/relax-devel/2006-10/msg00053.html). To change to the 2.0 development cycle, I will copy the 1.3 development line to the 'trunk' line. Rather than copying the main development line to '2.0', basing all development on the 'trunk' line will allow for better development branch management. In the future when a major or minor version increment occurs, the 'trunk' line will be copied or tagged as the old major+minro version number to allow bug fixes and other maintenance of the old version to occur. The large restructuring of relax has been within the branches/uf_redesign branch. The branch was originally planned to be for redesigning how the user functions are defined - including shifting all the user functions into the 'user_functions' directory and converting them into abstract definitions used to automatically generate the user functions objects for the prompt and script UI, the user function wizard windows and pages for the GUI, and the user function descriptions in the user manual. In addition to this very deep change, other major changes include: - Improvement of the help system in the prompt UI mode. This is now automatically generated when called by the user. This includes the __repr__() print out for the automatically generated objects, the user function class help system, and the user function help itself. The formatting has been improved with bold font used for the section titles and the keyword arguments. - The analysis specific API of the specific_fns directory has been redesigned to extensively use the parameter list objects. Many API base methods will now automatically work with the parameter list object, removing the need for a analysis specific implementation. - The GUI test suite has been significantly expanded. The system test relax scripts can now be used as GUI tests - the user functions are executed through the self._execute_uf() method which allows execution within all UIs, testing out the different code paths. - The specific and GUI tests can now be executed by group. For example all the model-free system tests can be run with '$ relax -s Mf'. This is very useful for relax development. - The XML formatted results and save files has been redesigned (it has improved, is more accurate, is easier for users to read in Python version 2.7.3 and above, and contains more metadata) and is now at version 2. - The print outs of spin specific data has improved with the addition of an automatic column width algorithm. - The addition of a new concept called data pipe bundles - related data pipes can now be grouped together into bundles. For example in the GUI, each analysis tab is associated with a bundle. And in the dauvergne_protocol model-free auto-analysis, all the internally generated data pipes are grouped together in the same bundle. - Improved BMRB support. In the GUI the 'File->Export for BMRB deposition' menu has been added which opens a special BMRB export window. In addition more metadata is now read from the NMR-STAR files into the relax data store, and the bmrb.display user function now works. - Improvements throughout the GUI. There are many other changes which will be listed in the CHANGES file. If you have any questions about the branches or development in the new subversion repository layout, please don't hesitate to ask. Regards, Edward