Revamp issue and PR templates and CONTRIBUTING guide

Thanks to @fd0 of the restic project for a very useful blog post and
something to plagiarise :-)

https://restic.net/blog/2018-09-09/GitHub-issue-templates
This commit is contained in:
Nick Craig-Wood 2018-09-21 18:17:32 +01:00
parent 9fa8c959ee
commit 17ab38502d
5 changed files with 129 additions and 21 deletions

31
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,31 @@
<!--
Welcome :-) We understand you are having a problem with rclone; we want to help you with that!
If you've just got a question or aren't sure if you've found a bug then please use the rclone forum:
https://forum.rclone.org/
instead of filing an issue for a quick response.
If you are reporting a bug or asking for a new feature then please use one of the templates here:
https://github.com/ncw/rclone/issues/new
otherwise fill in the form below.
Thank you
The Rclone Developers
-->
#### Output of `rclone version`
#### Describe the issue

View File

@ -1,14 +1,17 @@
---
name: Bug report
about: Report a problem with rclone
---
<!-- <!--
Hi! Welcome :-) We understand you are having a problem with rclone; we want to help you with that!
We understand you are having a problem with rclone or have an idea for an improvement - we want to help you with that! If you've just got a question or aren't sure if you've found a bug then please use the rclone forum:
If you've just got a question or aren't sure if you've found a bug then please use the rclone forum
https://forum.rclone.org/ https://forum.rclone.org/
instead of filing an issue. We'll reply quickly and it won't increase our massive issue backlog. instead of filing an issue for a quick response.
If you think you might have found a bug, please can you try to replicate it with the latest beta? If you think you might have found a bug, please can you try to replicate it with the latest beta?
@ -16,9 +19,7 @@ If you think you might have found a bug, please can you try to replicate it with
If you can still replicate it with the latest beta, then please fill in the info below which makes our lives much easier. A log with -vv will make our day :-) If you can still replicate it with the latest beta, then please fill in the info below which makes our lives much easier. A log with -vv will make our day :-)
If you have an idea for an improvement, then please search the old issues first and if you don't find your idea, make a new issue. Thank you
Thanks
The Rclone Developers The Rclone Developers
@ -27,17 +28,23 @@ The Rclone Developers
#### What is the problem you are having with rclone? #### What is the problem you are having with rclone?
#### What is your rclone version (eg output from `rclone -V`)
#### What is your rclone version (output from `rclone version`)
#### Which OS you are using and how many bits (eg Windows 7, 64 bit) #### Which OS you are using and how many bits (eg Windows 7, 64 bit)
#### Which cloud storage system are you using? (eg Google Drive) #### Which cloud storage system are you using? (eg Google Drive)
#### The command you were trying to run (eg `rclone copy /tmp remote:tmp`) #### The command you were trying to run (eg `rclone copy /tmp remote:tmp`)
#### A log from the command with the `-vv` flag (eg output from `rclone -vv copy /tmp remote:tmp`) #### A log from the command with the `-vv` flag (eg output from `rclone -vv copy /tmp remote:tmp`)

36
.github/ISSUE_TEMPLATE/Feature.md vendored Normal file
View File

@ -0,0 +1,36 @@
---
name: Feature request
about: Suggest a new feature or enhancement for rclone
---
<!--
Welcome :-)
So you've got an idea to improve rclone? We love that! You'll be glad to hear we've incorporated hundreds of ideas from contributors already.
Here is a checklist of things to do:
1. Please search the old issues first for your idea and +1 or comment on an existing issue if possible.
2. Discuss on the forum first: https://forum.rclone.org/
3. Make a feature request issue (this is the right place!).
4. Be prepared to get involved making the feature :-)
Looking forward to your great idea!
The Rclone Developers
-->
#### What is your current rclone version (output from `rclone version`)?
#### What problem are you are trying to solve?
#### How do you think rclone should be changed to solve that?

29
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,29 @@
<!--
Thank you very much for contributing code or documentation to rclone! Please
fill out the following questions to make it easier for us to review your
changes.
You do not need to check all the boxes below all at once, feel free to take
your time and add more commits. If you're done and ready for review, please
check the last box.
-->
#### What is the purpose of this change?
<!--
Describe the changes here
-->
#### Was the change discussed in an issue or in the forum before?
<!--
Link issues and relevant forum posts here.
-->
#### Checklist
- [ ] I have read the [contribution guidelines](https://github.com/ncw/rclone/blob/master/CONTRIBUTING.md#submitting-a-pull-request).
- [ ] I have added tests for all changes in this PR if appropriate.
- [ ] I have added documentation for the changes if appropriate.
- [ ] All commit messages are in [house style](https://github.com/ncw/rclone/blob/master/CONTRIBUTING.md#commit-messages).
- [ ] I'm done, this Pull Request is ready for review :-)

View File

@ -64,10 +64,11 @@ packages which you can install with
Make sure you Make sure you
* Add documentation for a new feature (see below for where) * Add [documentation](#writing-documentation) for a new feature.
* Add unit tests for a new feature * Follow the [commit message guidelines](#commit-messages).
* Add [unit tests](#testing) for a new feature
* squash commits down to one per feature * squash commits down to one per feature
* rebase to master `git rebase master` * rebase to master with `git rebase master`
When you are done with that When you are done with that
@ -203,14 +204,20 @@ file.
## Commit messages ## ## Commit messages ##
Please make the first line of your commit message a summary of the Please make the first line of your commit message a summary of the
change, and prefix it with the directory of the change followed by a change that a user (not a developer) of rclone would like to read, and
colon. The changelog gets made by looking at just these first lines prefix it with the directory of the change followed by a colon. The
so make it good! changelog gets made by looking at just these first lines so make it
good!
If you have more to say about the commit, then enter a blank line and If you have more to say about the commit, then enter a blank line and
carry on the description. Remember to say why the change was needed - carry on the description. Remember to say why the change was needed -
the commit itself shows what was changed. the commit itself shows what was changed.
Writing more is better than less. Comparing the behaviour before the
change to that after the change is very useful. Imagine you are
writing to yourself in 12 months time when you've forgotten everything
about what you just did and you need to get up to speed quickly.
If the change fixes an issue then write `Fixes #1234` in the commit If the change fixes an issue then write `Fixes #1234` in the commit
message. This can be on the subject line if it will fit. If you message. This can be on the subject line if it will fit. If you
don't want to close the associated issue just put `#1234` and the don't want to close the associated issue just put `#1234` and the
@ -258,9 +265,8 @@ To add a dependency `github.com/ncw/new_dependency` see the
instructions below. These will fetch the dependency, add it to instructions below. These will fetch the dependency, add it to
`go.mod` and `go.sum` and vendor it for older go versions. `go.mod` and `go.sum` and vendor it for older go versions.
export GO111MODULE=on GO111MODULE=on go get github.com/ncw/new_dependency
go get github.com/ncw/new_dependency GO111MODULE=on go mod vendor
go mod vendor
You can add constraints on that package when doing `go get` (see the You can add constraints on that package when doing `go get` (see the
go docs linked above), but don't unless you really need to. go docs linked above), but don't unless you really need to.
@ -275,9 +281,8 @@ in `vendor`.
If you need to update a dependency then run If you need to update a dependency then run
export GO111MODULE=on GO111MODULE=on go get -u github.com/pkg/errors
go get -u github.com/pkg/errors GO111MODULE=on go mod vendor
go mod vendor
Check in in a single commit as above. Check in in a single commit as above.