doc: update CONTRIBUTING.md (#2530)

* doc: update CONTRIBUTING.md

Remove bunch of old/stale text, but add a section (and clarify) using
issues to describe a future PR and that those need to be small (if you
want it merged faster)

Signed-off-by: Miek Gieben <miek@miek.nl>

* Update CONTRIBUTING.md

Co-Authored-By: miekg <miek@miek.nl>
This commit is contained in:
Miek Gieben
2019-02-08 16:21:18 +00:00
committed by GitHub
parent 06d945fc32
commit 073e2e1cf5

View File

@@ -1,88 +1,42 @@
# Contributing to CoreDNS # Contributing to CoreDNS
Welcome! Our community focuses on helping others and making CoreDNS the best it Welcome! Our community focuses on helping others and making CoreDNS the best it can be. We gladly
can be. We gladly accept contributions and encourage you to get involved! accept contributions and encourage you to get involved!
## Bug reports ## Bug Reports
First, please [search this repository](https://github.com/coredns/coredns/search?q=&type=Issues&utf8=%E2%9C%93) First, please [search this
with a variety of keywords to ensure your bug is not already reported. repository](https://github.com/coredns/coredns/search?q=&type=Issues&utf8=%E2%9C%93) with a variety
of keywords to ensure your bug is not already reported.
If not, [open an issue](https://github.com/coredns/coredns/issues) and answer the If not, [open an issue](https://github.com/coredns/coredns/issues) and answer the questions so we
questions so we can understand and reproduce the problematic behavior. can understand and reproduce the problematic behavior.
The burden is on you to convince us that it is actually a bug in CoreDNS. This is The burden is on you to convince us that it is actually a bug in CoreDNS. This is easiest to do when
easiest to do when you write clear, concise instructions so we can reproduce you write clear, concise instructions so we can reproduce the behavior (even if it seems obvious).
the behavior (even if it seems obvious). The more detailed and specific you are, The more detailed and specific you are, the faster we will be able to help you. Check out [How to
the faster we will be able to help you. Check out Report Bugs Effectively](http://www.chiark.greenend.org.uk/~sgtatham/bugs.html).
[How to Report Bugs Effectively](http://www.chiark.greenend.org.uk/~sgtatham/bugs.html).
Please be kind. :smile: Remember that CoreDNS comes at no cost to you, and you're Please be kind. :smile: Remember that CoreDNS comes at no cost to you, and you're getting free help.
getting free help.
We are using [Stable Bot](https://github.com/probot/stale) to close inactive issues. If you feel an ## Minor Improvements and New Tests
issue should not be closed you can add the "pinned" label to it or just update the bug every now and
then.
## Minor improvements and new tests Submit [pull requests](https://github.com/coredns/coredns/pulls) at any time. Make sure to write
tests to assert your change is working properly and is thoroughly covered.
Submit [pull requests](https://github.com/coredns/coredns/pulls) at any time. Make ## New Features
sure to write tests to assert your change is working properly and is thoroughly
covered.
First, please [search](https://github.com/coredns/coredns/search?q=&type=Issues&utf8=%E2%9C%93) with
a variety of keywords to ensure your suggestion/proposal is new.
## Proposals, suggestions, ideas, new features If so, you may open either an issue or a pull request for discussion and feedback.
First, please [search](https://github.com/coredns/coredns/search?q=&type=Issues&utf8=%E2%9C%93) If you are going to spend significant time implementing code for a pull request, best to open an
with a variety of keywords to ensure your suggestion/proposal is new. issue first and "claim" it and get feedback before you invest a lot of time.
If so, you may open either an issue or a pull request for discussion and If possible make a pull request as small as possible, or submit multiple pull request to complete a
feedback. feature. Smaller means: easier to understand and review. This in turn means things can be merged
faster.
The advantage of issues is that you don't have to spend time actually
implementing your idea, but you should still describe it thoroughly. The
advantage of a pull request is that we can immediately see the impact the change
will have on the project, what the code will look like, and how to improve it.
The disadvantage of pull requests is that they are unlikely to get accepted
without significant changes, or it may be rejected entirely. Don't worry, that
won't happen without an open discussion first.
If you are going to spend significant time implementing code for a pull request,
best to open an issue first and "claim" it and get feedback before you invest
a lot of time.
## Vulnerabilities
If you've found a vulnerability that is serious, please email: <team@coredns.io>.
If it's not a big deal, a pull request will probably be faster.
## Git Hook
We use `golint` and `go vet` as tools to warn use about things (noted golint is obnoxious sometimes,
but still helpful). Add the following script as a git `post-commit` in `.git/hooks/post-commit` and
make it executable.
~~~ sh
#!/bin/bash
# <https://git-scm.com/docs/githooks>:
# The script takes no parameters and its exit status does not affect the commit in any way. You can
# use git # rev-parse HEAD to get the new commits SHA1 hash, or you can use git log -l HEAD to get
# all of its # information.
for d in *; do
if [[ "$d" == "vendor" ]]; then
continue
fi
if [[ "$d" == "logo" ]]; then
continue
fi
if [[ ! -d "$d" ]]; then
continue
fi
golint "$d"/...
done
~~~
## Updating Dependencies ## Updating Dependencies
@@ -98,11 +52,6 @@ Use the following to update the locked versions of all dependencies
$ make dep-ensure $ make dep-ensure
``` ```
To add a dependency to the project, you might run
```sh
$ dep ensure github.com/pkg/errors
```
After the dependencies have been updated or added, you might run the following to After the dependencies have been updated or added, you might run the following to
prune vendored packages: prune vendored packages:
```sh ```sh
@@ -111,6 +60,6 @@ $ dep prune
Please refer to Golang's [`dep`](https://github.com/golang/dep) for more details. Please refer to Golang's [`dep`](https://github.com/golang/dep) for more details.
# Thank you # Thank You
Thanks for your help! CoreDNS would not be what it is today without your contributions. Thanks for your help! CoreDNS would not be what it is today without your contributions.