soumya92/barista

View on GitHub
CONTRIBUTING.md

Summary

Maintainability
Test Coverage
<!--
Copyright 2018 Google Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
# How to contribute

We'd love to accept your patches and contributions to this project. There are
just a few small guidelines you need to follow.

## Contributor License Agreement

Contributions to this project must be accompanied by a Contributor License
Agreement. You (or your employer) retain the copyright to your contribution,
this simply gives us permission to use and redistribute your contributions as
part of the project. Head over to <https://cla.developers.google.com/> to see
your current agreements on file or to sign a new one.

You generally only need to submit a CLA once, so if you've already submitted one
(even if it was for a different project), you probably don't need to do it
again.

## Formatting, Linting, and Testing

All code must be properly formatted. The easiest way to do that is `go fmt`.
Make sure all affected tests continue to pass after your changes,
and no new `go vet` or `golint` warnings are introduced by your pull request.

When possible, add tests for any new functionality, and run `go test -race`
to detect any data races. Because of the highly concurrent nature of this
project, the [Go Race Detector] is particularly useful in early detection of
edge case bugs.

[Go Race Detector]: https://blog.golang.org/race-detector