diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..4897733 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,115 @@ +# Pull Request + +## ๐Ÿ“‹ Description + +Please provide a clear and concise description of the changes in this pull request. + +**Related Issue(s):** +- Fixes #(issue number) +- Closes #(issue number) +- Addresses #(issue number) + +## ๐Ÿ”„ Type of Change + +Please delete options that are not relevant and check the appropriate box: + +- [ ] ๐Ÿ› Bug fix (non-breaking change which fixes an issue) +- [ ] โœจ New feature (non-breaking change which adds functionality) +- [ ] ๐Ÿ’ฅ Breaking change (fix or feature that would cause existing functionality to not work as expected) +- [ ] ๐Ÿ“š Documentation update (changes to documentation only) +- [ ] ๐ŸŽจ Style/formatting changes (code style, formatting, missing semi-colons, etc) +- [ ] โ™ป๏ธ Code refactoring (no functional changes, no api changes) +- [ ] โšก Performance improvements +- [ ] ๐Ÿงช Adding or updating tests +- [ ] ๐Ÿ”ง Configuration changes +- [ ] ๐Ÿ—„๏ธ Database schema changes + +## ๐Ÿงช Testing + +Please describe the tests that you ran to verify your changes and provide instructions so others can reproduce. + +### Test Configuration: +- [ ] Unit tests pass (`pytest`) +- [ ] Integration tests pass +- [ ] Manual testing completed +- [ ] API endpoints tested with Swagger/Postman +- [ ] Database migrations tested + +### Test Instructions: +```bash +# Example test commands +pytest tests/test_your_feature.py +curl -X GET "http://localhost:8000/api/v1/todos" +``` + +## ๐Ÿ“ Checklist + +Please check all that apply: + +### Code Quality +- [ ] My code follows the style guidelines of this project +- [ ] I have performed a self-review of my own code +- [ ] I have commented my code, particularly in hard-to-understand areas +- [ ] I have made corresponding changes to the documentation +- [ ] My changes generate no new warnings +- [ ] Code has been formatted with Ruff (`ruff format .`) +- [ ] Code has been linted with Ruff (`ruff check . --fix`) + +### Documentation +- [ ] I have updated the README.md if needed +- [ ] I have updated API documentation if needed +- [ ] I have added/updated docstrings for new functions +- [ ] I have updated the CONTRIBUTING.md if needed + +### Database Changes +- [ ] I have created appropriate database migrations +- [ ] Migration files include both upgrade and downgrade functions +- [ ] I have tested the migration on a development database +- [ ] I have updated the database schema documentation + +### Testing +- [ ] I have added tests that prove my fix is effective or that my feature works +- [ ] New and existing unit tests pass locally with my changes +- [ ] I have added integration tests for new endpoints +- [ ] I have tested error handling and edge cases + +## ๐Ÿ“ธ Screenshots (if applicable) + +If your changes include UI modifications or new API responses, please add screenshots here. + +## ๐Ÿ”— Additional Context + +Add any other context about the pull request here. This could include: + +- Performance implications +- Security considerations +- Backward compatibility notes +- Deployment considerations +- Future improvements or follow-up tasks + +## ๐Ÿ“‹ Review Notes + +Please mention anything specific you'd like reviewers to focus on: + +- [ ] Pay special attention to [specific area] +- [ ] Verify [specific functionality] +- [ ] Check [specific edge case] + +## ๐Ÿš€ Deployment Notes + +Any special deployment considerations or steps: + +- [ ] Requires database migration (`alembic upgrade head`) +- [ ] Requires environment variable updates +- [ ] Requires dependency updates (`pip install -r requirements.txt`) +- [ ] No special deployment steps needed + +--- + +**Additional Notes:** + + +By submitting this pull request, I confirm that: +- [ ] I have read and agree to follow the [Code of Conduct](CODE_OF_CONDUCT.md) +- [ ] I have read and followed the [Contributing Guidelines](CONTRIBUTING.md) +- [ ] I understand that this project is released under the MIT License \ No newline at end of file