First off, thank you for considering contributing to Scout Suite, you're awesome! 🎉
Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue, assessing changes, and helping you finalize your pull requests.
So you want to contribute some code, that's great! This project follows the GitHub Workflow.
- If it's a complex issue, please describe how you plan on going about addressing it on the issue thread.
- Assign yourself to the issue
- Create a branch using the following naming convention:
- If it's a feature:
feature/issuenumber-descriptive-name
- If it's a bug fix:
bugfix/issuenumber-descriptive-name
- If it's a hot fix:
hotfix/issuenumber-descriptive-name
- If it's a feature:
- Implement your solution and the associated tests
- Make sure your code follows the PEP8 guidelines
- Create a pull request against
develop
- Wait for people to review it
- Address the comments people left on your pull request
- Go back to 7. and repeat until your PR is 💯
- Wait for someone from the team to merge your PR
When filing an issue, make sure to answer these five questions:
- What version of Python are you using?
- What operating system and processor architecture are you using?
- What did you do?
- What did you expect to see?
- What did you see instead?
If you find yourself wishing for a feature that doesn't exist in Scout Suite, you are probably not alone. There are bound to be others out there with similar needs. Many of the features that Scout Suite has today have been added because our users saw the need. Open an issue on our issues list on GitHub which describes the feature you would like to see, why you need it, and how it should work.
Pull requests are regularly reviewed by the core team. We require a minimum of two reviewers before allowing to merge.