Skip to content

Commit 340925e

Browse files
committed
update CONTRIBUTING - mostly to include 'add to CHANGELOG' but eneded up fleshing out additional sections.
1 parent 445308a commit 340925e

File tree

2 files changed

+62
-1
lines changed

2 files changed

+62
-1
lines changed

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,20 @@ Once a new release is made this file will be updated to create a new `Unreleased
66

77
For more information about this file see also [Keep a Changelog](http://keepachangelog.com/) .
88

9+
<!--
10+
sections to include in release notes:
11+
12+
## [Unreleased]
13+
14+
### Added
15+
16+
### Fixed
17+
18+
### Changed
19+
20+
### Removed
21+
-->
22+
923
## [Unreleased]
1024

1125
### Added

CONTRIBUTING.md

Lines changed: 48 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,45 @@
1+
# Contributing to SIPNET
12

3+
We welcome contributions to SIPNET. This document outlines the process for contributing to the SIPNET project.
4+
5+
All contributors are expected to adhere to the PEcAn Project [Code of Conduct](https://github.com/PecanProject/pecan/blob/develop/CODE_OF_CONDUCT.md).
6+
7+
## GitHub Workflow
8+
9+
#### Branches
10+
11+
The `master` branch is the default branch for SIPNET. Development should be done in feature branches. Feature branches should be named according to the following convention: `ISSUE#-feature-name`. For example, if you are working on issue #23, your branch should be named `23-event-handler`.
12+
13+
#### Pull Requests
14+
15+
Pull requests should be made from feature branches to the `master` branch.
16+
17+
Pull request descriptions should include a brief summary of the changes and a list of any issues that are resolved by the pull request.
18+
19+
Expectations for merging:
20+
- Pass all integration tests
21+
- Approved by at least one other developer before being merged.
22+
- Include updates and additions to
23+
- Documentation
24+
- Tests
25+
- CHANGELOG.md
26+
227
## Style Guide
328

4-
## Compiling
29+
#### Clang
30+
31+
TBD #31
32+
33+
#### Documentation
34+
35+
What goes in **Doxygen**:
36+
- Documentation for functions, classes, and parameters.
37+
38+
What goes in **docs/*md**:
39+
- User guides and tutorials.
40+
- Documentation of equations, theoretical basis, and parameters.
41+
42+
## Compiling SIPNET binaries
543

644
SIPNET uses `make` to build the model and documentation. There are also miscellaneous targets for running analysis workflows:
745

@@ -17,6 +55,8 @@ make help
1755
```
1856
## Testing
1957

58+
Any new features (that are worth keeping!) should be covered by tests.
59+
2060
SIPNET also uses `make` to build and run its unit tests. This can be done with the following commands:
2161
```shell
2262
# Compile tests
@@ -32,3 +72,10 @@ If changes are made to the `modelStructure.h` file and unit tests are failing, t
3272
# Run this command from the root directory to update unit test versions of modelStructures.h
3373
tests/update_model_structures.sh
3474
```
75+
76+
## Releases
77+
78+
- Use [Semantic Versioning v2](https://semver.org/) for SIPNET releases.
79+
- Tag releases with the version number `vX.Y.Z`.
80+
- Include content from `CHANGELOG.md` file.
81+
- Add compiled SIPNET binaries.

0 commit comments

Comments
 (0)