We'd love to accept your patches and contributions to this project. There are just a few small guidelines you need to follow.
To help us respect your time as a contributor and maximize the chances of your work landing in the repository, please reach out early by creating a GitHub Issue to talk about the additions or improvements you want to make.
Some questions or feedback might not make sense as GitHub issues. For those, we've created a public
All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult GitHub Help for more information on using pull requests.
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.
We use C++11 with Google's C++ style guide. Please run
clang-format on your code before sending a pull request.
Every file containing source code must include a copyright and license header:
Copyright 2019 Google LLC 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 https://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.
This project follows Google's Open Source Community Guidelines.