User Tools

Site Tools


beauty:2014:summary

October 2014 beautification summary

This is to organize the ABINIT 2014 beautification, Wednesday 1 October - Wednesday 8 October 2014.

List of tasks

Three types of tasks are considered. Follow the links for the description of tasks. See the next section for the global list of attribution of tasks to each developer.

  1. HTML2YAML (Correct errors, or Check)

Of course, you are also welcome to contribute to ABINIT by some other way (e.g. provide tests for untested input variable - see the list in special/abirules/Refs/t01.out - or suppress them ; or treat some “known problems”, see the list in the file KNOWN_PROBLEMS). In this case, just make sure that your modifications will not interfere with the modifications corresponding to the three tasks above.

Even if you do not contribute to the F2003 task, it is still worth to read the Document that list the new Fortran2003 features for ABINITv8. Even if you do not contribute to the increase of code coverage, it is still worth to have a look at the analysis of code coverage.

The beautification is to be done on the basis of your v7.11.1 branches (private for work, and public when the work is done - as usual).

Volunteers: please check your attributions and update the table corresponding to your tasks once they are complete.

IMPORTANT
Please, merge the trunk in your branch before starting a new task !

Results of the beautification - Debriefing

The collective beautification operation, that happened at the beginning of this month, after careful preparation, is now finished, with the final merge of v7.11.2.

The new ABINIT Wiki played an important role for the coordination of the operation, and proved rather convenient.

Concerning the automatic creation of the html : the goal has been reached !

The abinit_vars.yml is now the source for the creation of the html files in the doc/input_variables directory (the translation of *yml to *html is automatically tested on the inca slave). The old doc/input_variables/*html files have been archived in the subdirectory old_html_files, while the new ones are created in html_automatically_generated when the python script abi_yml2html.py is executed. The nearly 700 input variables of ABINIT are now treated in this way. It will be the starting point to have other automatic treatments (including checking the code coherence) of ABINIT.

Concerning the replacement of the 'pointer' attribute in datastructure by the 'allocatable' attribute, building on the agreed availability of F2003 features (see the Fortran 2003 page): most of the possible replacements (if not all) have been done. It turned out, however, that more than half of the pointers (actually 89 on a total of 154) were really needed as pointers, not as allocatable entities. This being said, 65 pointers were converted to allocatable, so that this F2003 feature is now widely used!

Concerning the improvement in ABINIT coverage by automatic tests, for which the automatic monitoring had been implemented by Jean-Michel (see http://www.abinit.org/developers/abinit-dev-status/code-coverage), this first collective operation has allowed to decrease the number of not covered functions/subroutines from 1060 (for a total number of functions/subroutines of 3625) to 1003. It was also realized that many of the non-covered routines are part of libraries, for which the strategy of adressing them from ABINIT is not the optimal one (unitary testing should be preferred). In any case, increasing the test coverage of ABINIT is a long-term endeavor.

Of course, beautification/cleaning of ABINIT will continue, in view of releasing ABINITv8 in some time. But this cleaning will continue to be done at the level of each developer effort, and by some specific developers.

The tasks for further collective beautification will be discussed next year, in particular at the next ABINIT developer workshop, 27-30 April 2015, currently organized by Matthieu Verstraete and colleagues at the ULg!

Thanks for your collective contribution to the recent beautification effort, and I wish you the best in your development projects!

Xavier

beauty/2014/summary.txt · Last modified: 2014/11/06 06:55 by Xavier Gonze