wiki: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 now offer a range of git branches to help developers choose how stable they want their code to be:

Branch What it's for
develop Bleeding-edge development code, new feature (ticket) branches should branch off here to minimise conflicts
passed_continuous latest code that passed continuous tests and isn't disasterous
passed_nightly latest code that passed above tests, plus some longer nightly ones including coverage and memory testing
passed_portability latest code that passed above tests, plus our suite of tests for different dependency versions
master Latest release-candidate quality code that has passed all tests
Release Tags Released code for a certain Chaste version (e.g. v3.4), also accessible from https://github.com/Chaste/Chaste with nice instructions!

You can get these revisions by cloning the repository and then doing

git checkout <branch>

e.g.

git checkout master

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.

Last modified 3 months ago Last modified on Nov 3, 2016, 5:32:55 PM