First off, thanks for taking the time to contribute! π π
The following is a set of guidelines for contributing to PyRai. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.
This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code.
Before creating bug reports, please check the issue list as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible:
- Use a clear and descriptive title
- Describe the exact steps which reproduce the problem
- Provide specific examples to demonstrate the steps
- Describe the behavior you observed after following the steps
- Explain which behavior you expected to see instead and why
- Include screenshots and animated GIFs if possible
Enhancement suggestions are tracked as GitHub issues. When creating an enhancement suggestion, please include:
- Use a clear and descriptive title
- Provide a step-by-step description of the suggested enhancement
- Provide specific examples to demonstrate the steps
- Describe the current behavior and explain which behavior you expected to see instead
- Explain why this enhancement would be useful
Please follow these steps to have your contribution considered by the maintainers:
- Follow all instructions in the template
- Follow the styleguides
- After you submit your pull request, verify that all status checks are passing
- Use the present tense ("Add feature" not "Added feature")
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
- Limit the first line to 72 characters or less
- Reference issues and pull requests liberally after the first line
- Consider starting the commit message with an applicable emoji:
- π¨
:art:when improving the format/structure of the code - π
:racehorse:when improving performance - π
:memo:when writing docs - π
:bug:when fixing a bug - π₯
:fire:when removing code or files - π
:green_heart:when fixing the CI build - β
:white_check_mark:when adding tests - π
:lock:when dealing with security - β¬οΈ
:arrow_up:when upgrading dependencies - β¬οΈ
:arrow_down:when downgrading dependencies
- π¨
- Follow PEP 8
- Use Black code formatter
- Use isort for import sorting
- Use mypy for type checking
- Write docstrings in Google style
- Use Markdown for documentation
- Reference functions, classes, and modules in backticks
- Use section links to other parts of the documentation
- Include code examples when possible
This section lists the labels we use to help us track and manage issues and pull requests.
bug- Issues that are bugsdocumentation- Issues for improving or updating our documentationenhancement- Issues for new features or improvementsgood first issue- Good for newcomershelp wanted- Extra attention is neededinvalid- Issues that aren't valid (e.g. user errors)question- Further information is requestedwontfix- Valid issues that we won't address
If you need help, you can:
- Join our Discord server
- Ask in our GitHub Discussions
- Email us at support@pyrai.xyz