aboutsummaryrefslogtreecommitdiffstats
path: root/.github/CONTRIBUTING.md
diff options
context:
space:
mode:
authorKjeld Schouten-Lebbing <[email protected]>2019-12-30 18:24:41 +0100
committerBrian Behlendorf <[email protected]>2019-12-30 09:24:41 -0800
commit82e996c2616af6254002065398de7cfb6929c4fd (patch)
tree89979d0463fe4d5140bde4b6883f49aa23bbe7a2 /.github/CONTRIBUTING.md
parent8b3438e5034c192c652eafe3180464a57a839174 (diff)
Improve Pull Request guidelines
- Splits PR advice into two sections. - Add "co-authored-by" instructions. - Add description of draft PR and when using it is appropriate. - Reword ZFS Test Suite checklist question. - Link to zfs-tests.sh and zloop.sh. Reviewed-By: Marcel Schilling <[email protected]> Reviewed-By: Brian Behlendorf <[email protected]> Reviewed-By: Richard Laager <[email protected]> Co-Authored-By: Marcel Schilling <[email protected]> Co-Authored-By: Brian Behlendorf <[email protected]> Co-Authored-By: Richard Laager <[email protected]> Signed-off-by: Kjeld Schouten-Lebbing <[email protected]> Closes #9753
Diffstat (limited to '.github/CONTRIBUTING.md')
-rw-r--r--.github/CONTRIBUTING.md28
1 files changed, 27 insertions, 1 deletions
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index 2b47d458c..ee5a72c83 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -120,6 +120,9 @@ Otherwise, open a new issue and describe your proposed feature. Why is this
feature needed? What problem does it solve?
### Pull Requests
+
+#### General
+
* All pull requests must be based on the current master branch and apply
without conflicts.
* Please attempt to limit pull requests to a single commit which resolves
@@ -133,7 +136,20 @@ logically independent patches which build on each other. This makes large
changes easier to review and approve which speeds up the merging process.
* Try to keep pull requests simple. Simple code with comments is much easier
to review and approve.
+* All proposed changes must be approved by a ZFS on Linux organization member.
+* If you have an idea you'd like to discuss or which requires additional testing, consider opening it as a draft pull request.
+Once everything is in good shape and the details have been worked out you can remove its draft status.
+Any required reviews can then be finalized and the pull request merged.
+
+#### Tests and Benchmarks
+* Every pull request will by tested by the buildbot on multiple platforms by running the [zfs-tests.sh and zloop.sh](
+https://github.com/zfsonlinux/zfs/wiki/Building-ZFS#running-zloopsh-and-zfs-testssh) test suites.
+* To verify your changes conform to the [style guidelines](
+https://github.com/zfsonlinux/zfs/blob/master/.github/CONTRIBUTING.md#style-guides
+), please run `make checkstyle` and resolve any warnings.
+* Static code analysis of each pull request is performed by the buildbot; run `make lint` to check your changes.
* Test cases should be provided when appropriate.
+This includes making sure new features have adequate code coverage.
* If your pull request improves performance, please include some benchmarks.
* The pull request must pass all required [ZFS
Buildbot](http://build.zfsonlinux.org/) builders before
@@ -142,7 +158,6 @@ builder failures, you may be experiencing a [test suite
issue](https://github.com/zfsonlinux/zfs/issues?q=is%3Aissue+is%3Aopen+label%3A%22Test+Suite%22).
There are also various [buildbot options](https://github.com/zfsonlinux/zfs/wiki/Buildbot-Options)
to control how changes are tested.
-* All proposed changes must be approved by a ZFS on Linux organization member.
### Testing
All help is appreciated! If you're in a position to run the latest code
@@ -290,3 +305,14 @@ Git can append the `Signed-off-by` line to your commit messages. Simply
provide the `-s` or `--signoff` option when performing a `git commit`.
For more information about writing commit messages, visit [How to Write
a Git Commit Message](https://chris.beams.io/posts/git-commit/).
+
+#### Co-authored By
+If someone else had part in your pull request, please add the following to the commit:
+`Co-authored-by: Name <[email protected]>`
+This is useful if their authorship was lost during squashing, rebasing, etc.,
+but may be used in any situation where there are co-authors.
+
+The email address used here should be the same as on the GitHub profile of said user.
+If said user does not have their email address public, please use the following instead:
+`Co-authored-by: Name <[username]@users.noreply.github.com>`
+