GNU Astronomy Utilities

13.9 Developer’s checklist

This is a checklist of things to do after applying your changes/additions in Gnuastro:

  1. If the change is non-trivial, write test(s) in the tests/progname/ directory to test the change(s)/addition(s) you have made. Then add their file names to tests/
  2. If your change involves a change in command-line behavior of a Gnuastro program or script (for example, adding a new option or argument), create or update the respective bin/PROGNAME/ file described under the Bash programmable completion section.
  3. Run $ make check to make sure everything is working correctly.
  4. Make sure the documentation (this book) is completely up to date with your changes, see Documentation.
  5. Commit the change to your issue branch (see Production workflow and Forking tutorial). Afterwards, run Autoreconf to generate the appropriate version number:
    $ autoreconf -f
  6. Finally, to make sure everything will be built, installed and checked correctly run the following command (after re-configuring, and rebuilding). To greatly speed up the process, use multiple threads (8 in the example below, change it appropriately)
    $ make distcheck -j8

    This command will create a distribution file (ending with .tar.gz) and try to compile it in the most general cases, then it will run the tests on what it has built in its own mini-environment. If $ make distcheck finishes successfully, then you are safe to send your changes to us to implement or for your own purposes. See Production workflow and Forking tutorial.