diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0f2430e7..8de17d61 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,8 +1,12 @@ -# Contributing to Qresp +# Contributing to the source -Fork the repository and clone. +Contributions are welcomed via pull requests. Contact the **Qresp** developers before starting work to ensure it meshes well with the planned development direction and standards set for the project. -**Qresp** needs atleast Python version 3.4 and pip +## Version control + +All changes in a pull request should be closely related. Multiple change sets that are loosely coupled should be proposed in separate pull requests. Use a consistent style for writing code. The pull request should be merged in the `develop` branch. + +The respository can be cloned and Qresp can be installed in this way: ```bash $ git clone https://github.com/qresp-code-development/qresp.git @@ -10,5 +14,26 @@ $ cd qresp/web $ pip install -r requirements.txt ``` -## Running Tests +Note: **Qresp** needs at least Python 3.4 and pip + +## Features + +New features should be applicable to a variety of use-cases. The **Qresp** developers can assist you in designing flexible interfaces. + +## Testing + +Add tests for all new functionality. Run `nose2 -v` to run all tests. + +## Release + +We use [semantic versioning](https://semver.org/), i.e. version labels have the form v``.``.`` + + - Patch release: v0.0.0 to v0.0.1, only bug fixes + - Minor release: v0.0.0 to v0.1.0, bug fixes and new features that maintain backwards compatibility + - Major release: v0.0.0 to v1.0.0, bug fixes and new features that break backwards compatibility + +# Contributing to the documentation + +Comment complex sections of code so that other developers can understand them. +Add demonstrations of new functionality, e.g. using Jupyter notebooks.