So you wish to contribute to this project? Fantastic! Here are a few guidelines to help you do this in a streamlined fashion.
When supplying a bug report, please consider the following guidelines. These serve to make it easier for us to address the issue and find a solution. Most of these are pretty self-evident, but sometimes it is still necessary to reiterate them.
Be patient with non-native English speakers. If their bug reports or comments are hard to understand, just ask for clarification. Do not start guessing at their meaning, as this may just lead to more confusion and misunderstandings.
Include this program in the bug report. It often suffices to paste the code in a Gist or on the Go playground.
Bug reports are great. Supplying fixes to bugs is even better. When submitting a pull request, the following guidelines are good to keep in mind:
go fmt
: Always run your code through go fmt
, before
committing it. Code has to be readable by many different
people. And the only way this will be as painless as possible,
is if we all stick to the same code style.
Some of our projects may have automated build-servers hooked up
to commit hooks. These will vet any submitted code and determine
if it meets a set of properties. One of which is code formatting.
These servers will outright deny a submission which has not been
run through go fmt
, even if the code itself is correct.
We try to maintain a zero-tolerance policy on this matter, because consistently formatted code makes life a great deal easier for everyone involved.
Fixes return value for
foo/boo.Baz()
to be consistent with the rest of the API. This addresses issue #32
Do not pile a lot of unrelated changes into a single commit.
Pick and choose only those changes for a single commit, which are
directly related. We would much rather see a hundred commits
saying nothing but "Runs go fmt"
in between any real fixes
than have these style changes embedded in those real fixes.
It creates a lot of noise when trying to review code.