mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 00:04:15 -04:00
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:
103
CONTRIBUTING.md
103
CONTRIBUTING.md
@@ -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 commit’s 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.
|
||||||
|
|||||||
Reference in New Issue
Block a user