Skip to content

Commit

Permalink
Add contributing guide
Browse files Browse the repository at this point in the history
  • Loading branch information
vkostyukov committed Feb 3, 2015
1 parent 6fd9825 commit c22c518
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 1 deletion.
34 changes: 34 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
Generally, Finch follows a standard [fork and pull][0] model for contributions via GitHub pull requests. Thus, the
_contributing process_ looks as follows:

1. [Write code](#write-code)
2. [Write tests](#write-tests)
3. [Write docs](#write-docs)
4. [Submit a PR](#submit-a-pr)

## Write Code
Finch follows [Effective Scala][1] code style guide. When in doubt, look around the codebase and see how it's done elsewhere.

* Code and comments should be formatted to a width no greater than 120 columns
* Files should be exempt of trailing spaces

## Write Tests
Finch uses [ScalaTest][2] with the following settings:

* Every test should be a `FlatSpec` with `Matchers` mixed in
* An assertion should be done with `x shouldBe y`
* Exceptions should be intercepted with `an [Exception] should be thrownBy x`

## Write Docs
Write clean and simple docs in the `docs.md` file.

## Submit a PR

* PR should be submitted from a separate branch (use `git checkout -b "fix-133"`)
* PR should contain only one commit (use `git commit --amend` and `git --force push`)
* PR should not decrease the code coverage more than by 1%
* PR's comment message should use present tense and be capitalized properly (i.e., `Add tests for RequestReader`)

[0]: https://help.github.com/articles/using-pull-requests/
[1]: http://twitter.github.io/effectivescala/
[2]: http://www.scalatest.org/
12 changes: 11 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ Documentation
Contacts
--------

* Use a Gitter room for questions like _"How do I ..."_ [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/finagle/finch?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
* Most of the discussions and announcements are happen at [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/finagle/finch?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Adopters
--------
Expand All @@ -71,6 +71,16 @@ Adopters
* [Sabre Labs](http://sabrelabs.com)
* *Submit a pull-request to include your company/project into the list*

Contributing
------------

There are plenty of ways to contribute into Finch:

* Give it a star
* Join the [Gitter](https://gitter.im/finagle/finch) room and give a hand in answering users' questions
* [Submit a PR](CONTRIBUTING.md)
* Wear a [Finch T-Shirt](http://www.redbubble.com/people/vkostyukov/works/13277123-finch-io-rest-api-with-finagle?p=t-shirt)

License
-------

Expand Down

0 comments on commit c22c518

Please sign in to comment.