Skip to content

Commit

Permalink
Clarify sections of the CONTRIBUTING guide
Browse files Browse the repository at this point in the history
  • Loading branch information
timothy-nunn authored and jonmaddock committed Sep 12, 2023
1 parent 3d0b387 commit bf6faf8
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ There are many valuable contributions that can be made to PROCESS:
* Implementing features or bugs raised as issues.
* Updating and improving documentation.

When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.
When contributing to this repository, please first discuss the change you wish to make via [issue](https://github.com/ukaea/PROCESS/issues), [discussion](https://github.com/ukaea/PROCESS/discussions), [email](https://github.com/ukaea/PROCESS#contacts), or any other method with the owners of this repository before making a change.

Please remember that all contributions and communication regarding PROCESS are subject to our [Code of Concut](https://github.com/ukaea/PROCESS/blob/main/CODE_OF_CONDUCT.md).

Expand All @@ -17,10 +17,10 @@ Issues can be used to report bugs or request features and improvements. We ask y
## Submitting a pull request
Please discuss any feature ideas you have with the developers before submitting them, as you may not be aware of parallel development work taking place, or implementation decisions / subtleties which are relevant. The ideal workflow for submitting a pull request is as follows:

* Discuss the feature with a core PROCESS developer.
* Discuss the feature with a core PROCESS developer (as mentioned above).
* Submit an issue (if one does not exist for this feature/ bug) that documents the proposed change.
* Fork our repository.
* Create a branch of `main` with an appropriate name (e.g. `feature-abc`).
* Create a branch off `main` with an appropriate name (e.g. `feature-abc`).
* Make the relevant changes for the repository (ensuring the changes do not creep away from the scope of the issue).
* Discuss any problems or development choices in the issue and keep everyone updated on the progress of your development.
* If the changes are notable and it would benefit other users to be aware, [create a changelog entry](https://ukaea.github.io/PROCESS/development/versioning/).
Expand All @@ -33,6 +33,6 @@ When making code contributions, we strongly recommend using pre-commit to verify
Please remember that all contributions are made under the [MIT license](https://github.com/ukaea/PROCESS/blob/main/LICENSE.txt).

### Testing
PROCESS has unit, integration, and regression tests. Any new functionality must be appropriately tested. Sometimes, changes may require other tests to be changed. These changes should be justified in the pull request description. Tests can be run locally by follow [our testing documentation](https://ukaea.github.io/PROCESS/development/testing/). All pull requests will also be run against our GitHub actions which will run all of the tests and report back to the reviewer any failures. **The unit and integration tests must pass on the CI for the changes to be accepted**.
PROCESS has unit, integration, and regression tests. Any new functionality must be appropriately tested. Sometimes, changes may require other tests to be changed. These changes should be justified in the pull request description. Tests can be run locally by following [our testing documentation](https://ukaea.github.io/PROCESS/development/testing/). All pull requests will also be run against our GitHub actions which will run all of the tests and report back to the reviewer any failures. **The unit and integration tests must pass on the CI for the changes to be accepted**.

Regression tests, due to the nature of PROCESS, can change as model changes affect the optima which PROCESS converges to. A reviewer will review these changes to ensure they are minor and justified. We recommend justifying how a regression test is changing in the pull request discussion, a reviewer will likely request this anyway. For convenience, the CI system runs a 0% tolerance job that will highlight all differences between the current version of PROCESS on the `main` branch and your modified version of PROCESS; the 5% job excludes all differences under 5% differences between the two versions.

0 comments on commit bf6faf8

Please sign in to comment.