ChasteGuides/ExternalDeveloperGuide

Helpful resources for users of development versions of Chaste

This page is intended to assist those external to the core Chaste team who still want to develop with the "bleeding edge" latest development code, rather than merely the last official release.

Since some parts of the Chaste code-base are not released (e.g. those relating specifically to papers in preparation), some of the developer resources, such as results from the automated tests and full documentation for the latest revision, are not made publicly available. We have now created some additional resources to improve this situation.

Documentation

Automatically generated documentation for the public parts of the most recent revision can be found here.

If you have doxygen and graphviz installed, you may also generate documentation from your own source tree by running

scons build=DoxygenCoverage

The most recent "good revision"

Occasionally broken code is committed to the Chaste repository, or some unexpected tests fail. This can be frustrating if users do not know if it's something they've broken, or if the fault lies with the repository code. We cannot yet expose the results of the automated tests, but we can show automatically which was the last revision that was given a clean bill of health by the nightly tests. This does not necessarily mean it is release quality: some tests are only run weekly, and it may not pass on all versions of the libraries which we support. But it is likely to be a good base to work from. (Note that the latest "release-candidate-quality" revision may be later than the last "good" revision, since not all revisions undergo the main continuous testing - user projects and branches are tested separately.)

You can get these revisions by checking out the source code and then doing

svn up -r <required revision number>

e.g.

svn up -r 14566

Coding Standards

To understand why Chaste variables, methods and classes are named like they are please see our C++ naming conventions.

We also lay out and document our code in a particular way, see CodeStructureStrategy.

You may also want to read through the other 'strategies' that we use to keep things consistent and well tested at ChasteStrategies.