1Contributing to NullAway 2======================= 3 4Uber welcomes contributions of all kinds and sizes. This includes everything from simple bug reports to large features. 5 6Workflow 7-------- 8 9We love GitHub issues! 10 11For small feature requests, an issue first proposing it for discussion or demo implementation in a PR suffice. 12 13For big features, please open an issue so that we can agree on the direction, and hopefully avoid investing a lot of time on a feature that might need reworking. 14 15Small pull requests for things like typos, bug fixes, etc are always welcome. 16 17DOs and DON'Ts 18-------------- 19 20* DO format your code using Google Java Format. An appropriate Git pre-commit hook is automatically installed the first time you run `./gradlew`. 21* DO include tests when adding new features. When fixing bugs, start with adding a test that highlights how the current behavior is broken. 22* DO keep the discussions focused. When a new or related topic comes up it's often better to create new issue than to side track the discussion. 23 24* DON'T submit PRs that alter licensing related files or headers. If you believe there's a problem with them, file an issue and we'll be happy to discuss it. 25 26Guiding Principles 27------------------ 28 29* We allow anyone to participate in our projects. Tasks can be carried out by anyone that demonstrates the capability to complete them 30* Always be respectful of one another. Assume the best in others and act with empathy at all times 31* Collaborate closely with individuals maintaining the project or experienced users. Getting ideas out in the open and seeing a proposal before it's a pull request helps reduce redundancy and ensures we're all connected to the decision making process 32