CONTRIBUTING.md 1.17 KB
Newer Older
Marco Govoni's avatar
Marco Govoni committed
1
2
# Contributing to the source

Marco Govoni's avatar
Marco Govoni committed
3
Contributions are welcomed via merge requests. Contact the **WEST** developers before starting work to ensure it meshes well with the planned development direction and
Marco Govoni's avatar
Marco Govoni committed
4
standards set for the project.
Marco Govoni's avatar
Marco Govoni committed
5

Marco Govoni's avatar
Marco Govoni committed
6
7
8
9
10
## 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. 

## Features
Marco Govoni's avatar
Marco Govoni committed
11

Marco Govoni's avatar
Marco Govoni committed
12
New features should be applicable to a variety of use-cases. The **WEST** developers can assist you in designing flexible interfaces.
Marco Govoni's avatar
Marco Govoni committed
13

Marco Govoni's avatar
Marco Govoni committed
14
## Testing
Marco Govoni's avatar
Marco Govoni committed
15

Marco Govoni's avatar
Marco Govoni committed
16
Add tests for all new functionality.
Marco Govoni's avatar
Marco Govoni committed
17

Marco Govoni's avatar
Marco Govoni committed
18
19
20
21
22
23
24
25
26
## Release

We use [semantic versioning](https://semver.org/), i.e. version labels have the form v<major>.<minor>.<patch>

 - Patch release: v0.8.1 to v0.8.2, only bug fixes
 - Minor release: v0.8.1 to v0.9.0, bug fixes and new features that maintain backwards compatibility
 - Major release: v0.8.1 to v1.0.0, bug fixes and new features that break backwards compatibility

# Contributing to the documentation
Marco Govoni's avatar
Marco Govoni committed
27

Marco Govoni's avatar
Marco Govoni committed
28
29
Comment complex sections of code so that other developers can understand them.
Add demonstrations of new functionality, e.g. using Jupyter notebooks.
Marco Govoni's avatar
Marco Govoni committed
30