We want to make contributing to this project as easy and transparent as possible.
The code of conduct is described in CODE_OF_CONDUCT.md.
We actively welcome your pull requests.
- Fork the repo and create your branch from
main. - If you've added code that should be tested, add tests.
- If you've changed APIs, update the documentation.
- Ensure the test suite passes.
- Make sure your code lints.
- If you haven't already, complete the Contributor License Agreement ("CLA").
Kineto uses lintrunner for code formatting and linting, the same tool used by
PyTorch.
pip install lintrunnerFirst, initialize lintrunner (this downloads/verifies linter dependencies):
lintrunner initTo check your code:
lintrunnerTo automatically fix issues:
lintrunner -aTo lint specific files:
lintrunner path/to/file.cpp- CLANGFORMAT: C++ code formatting (automatically fixes spacing, indentation, style)
- NEWLINE: Ensures files end with exactly one newline
- SPACES: Detects and removes trailing whitespace
- TABS: Ensures spaces are used instead of tabs
GitHub Actions will automatically run lintrunner on all pull requests. Make sure
to run lintrunner -a locally before pushing to avoid CI failures.
In order to accept your pull request, we need you to submit a CLA. You only need to do this once to work on any of Facebook's open source projects.
Complete your CLA here: https://code.facebook.com/cla
We use GitHub issues to track public bugs. Please ensure your description is clear and has sufficient instructions to be able to reproduce the issue.
Facebook has a bounty program for the safe disclosure of security bugs. In those cases, please go through the process outlined on that page and do not file a public issue.
By contributing to Kineto, you agree that your contributions will be licensed under the LICENSE file in the root directory of this source tree.