mirror of
https://github.com/coder/coder.git
synced 2026-09-21 12:44:32 +08:00
chore: Add contributing guidelines (#874)
It's helpful for us Coders to align on a common set of style guidelines. While I'd prefer to automate this, documentation should get us a lot of the way there! Please review these thoroughly, as PRs will be checked against it after merge.
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# Contributing
|
||||
|
||||
## Go Style
|
||||
|
||||
Contributions must adhere to [Effective Go](https://go.dev/doc/effective_go). Linting rules should
|
||||
be preferred over documenting styles (run ours with `make lint`); humans are error prone!
|
||||
|
||||
Read [Go's Code Review Comments Wiki](https://github.com/golang/go/wiki/CodeReviewComments) to find
|
||||
common comments made during reviews of Go code.
|
||||
|
||||
### No Unused Packages
|
||||
|
||||
Coders write packages that are used during implementation. It's difficult to validate whether an
|
||||
abstraction is valid until it's checked against an implementation. This results in a larger
|
||||
changeset but provides reviewers with an educated perspective on the contribution.
|
||||
|
||||
## Review
|
||||
|
||||
> Taken from [Go's review philosophy](https://go.dev/doc/contribute#reviews).
|
||||
|
||||
Coders value thorough reviews. Think of each review comment like a ticket: you are expected to
|
||||
somehow "close" it by acting on it, either by implementing the suggestion or convincing the reviewer
|
||||
otherwise.
|
||||
|
||||
After you update the change, go through the review comments and make sure to reply to every one. You
|
||||
can click the "Done" button to reply indicating that you've implemented the reviewer's suggestion;
|
||||
otherwise, click on "Reply" and explain why you have not, or what you have done instead.
|
||||
|
||||
It is perfectly normal for changes to go through several round of reviews, with one or more
|
||||
reviewers making new comments every time and then waiting for an updated change before reviewing
|
||||
again. All contributors, including experienced maintainers, are subject to the same review cycle;
|
||||
this process is not meant to be applied selectively or discourage anyone from contribution.
|
||||
+1
-1
@@ -64,7 +64,7 @@ $ coder projects update gcp-linux
|
||||
|
||||
## Development
|
||||
|
||||
The code structure is inspired by [Basics of Unix Philosophy](https://homepage.cs.uri.edu/~thenry/resources/unix_art/ch01s06.html) and [Effective Go](https://go.dev/doc/effective_go).
|
||||
Read the [contributing docs](./CONTRIBUTING.md) for style and review guidelines.
|
||||
|
||||
Coder requires Go 1.18+, Node 14+, and GNU Make.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user