|
# Contributing to detectron2 |
|
|
|
## Issues |
|
We use GitHub issues to track public bugs and questions. |
|
Please make sure to follow one of the |
|
[issue templates](https://github.com/facebookresearch/detectron2/issues/new/choose) |
|
when reporting any issues. |
|
|
|
Facebook has a [bounty program](https://www.facebook.com/whitehat/) 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. |
|
|
|
## Pull Requests |
|
We actively welcome your pull requests. |
|
|
|
However, if you're adding any significant features (e.g. > 50 lines), please |
|
make sure to have a corresponding issue to discuss your motivation and proposals, |
|
before sending a PR. We do not always accept new features, and we take the following |
|
factors into consideration: |
|
|
|
1. Whether the same feature can be achieved without modifying detectron2. |
|
Detectron2 is designed so that you can implement many extensions from the outside, e.g. |
|
those in [projects](https://github.com/facebookresearch/detectron2/tree/master/projects). |
|
If some part is not as extensible, you can also bring up the issue to make it more extensible. |
|
2. Whether the feature is potentially useful to a large audience, or only to a small portion of users. |
|
3. Whether the proposed solution has a good design / interface. |
|
4. Whether the proposed solution adds extra mental/practical overhead to users who don't |
|
need such feature. |
|
5. Whether the proposed solution breaks existing APIs. |
|
|
|
When sending a PR, please do: |
|
|
|
1. If a PR contains multiple orthogonal changes, split it to several PRs. |
|
2. If you've added code that should be tested, add tests. |
|
3. For PRs that need experiments (e.g. adding a new model or new methods), |
|
you don't need to update model zoo, but do provide experiment results in the description of the PR. |
|
4. If APIs are changed, update the documentation. |
|
5. Make sure your code lints with `./dev/linter.sh`. |
|
|
|
|
|
## Contributor License Agreement ("CLA") |
|
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> |
|
|
|
## License |
|
By contributing to detectron2, you agree that your contributions will be licensed |
|
under the LICENSE file in the root directory of this source tree. |
|
|