Version for version 1.8 of the CF conventions.

Reporting bugs

Please report bugs via a new issue in issue tracker (, using the Bug report issue template.

Feature requests and suggested improvements

Suggestions for new features and any improvements to the functionality, API, documentation and infrastructure can be submitted via a new issue in issue tracker (, using the Feature request issue template.


Questions, such as “how can I do this?”, “why does it behave like that?”, “how can I make it faster?”, etc., can be raised via a new issue in issue tracker (, using the Question issue template.

Preparing pull requests

Pull requests should follow on from a discussion in the issue tracker (

Fork the cfdm GitHub repository (

Clone your fork locally and create a branch:

$ git clone<YOUR GITHUB USERNAME>/cfdm.git
$ cd cfdm
$ git checkout -b <your-bugfix-feature-branch-name master>

Break your edits up into reasonably-sized commits, each representing a single logical change:

$ git commit -a -m "<COMMIT MESSAGE>"

Create a new changelog entry in Changelog.rst. The entry should be written (where <description> should be a brief description of the change) as:

* <description> (<issue number>)

Run the test suite to make sure the tests all pass:

$ cd cfdm/test
$ python

Add your name to the list of contributors list at docs/source/contributing.rst.

Finally, make sure all commits have been pushed to the remote copy of your fork and submit the pull request via the GitHub website, to the master branch of the NCAS-CMS/cfdm repository. Make sure to reference the original issue in the pull request’s description.

Note that you can create the pull request while you’re working on this, as it will automatically update as you add more commits. If it is a work in progress, you can mark it initially as a draft pull request.


We would like to acknowledge and thank all those who have contributed ideas, code, and documentation to the cfdm library:

  • Allyn Treshansky

  • Bryan Lawrence

  • David Hassell

  • Jonathan Gregory

  • Martin Juckes

  • Riley Brady

  • Sadie Bartholomew