Pull request checklist
Run through this before you click "Create pull request". It is the difference between a PR merged in an hour and one that goes back and forth for three days.
Ticks are saved in your browser, so you can come back to this page.
Before you open it
Writing the pull request
After you open it
What gets a PR rejected
These are marked as spam and do not count
- Changing whitespace, commas, or formatting in Markdown and nothing else
- Adding your name or a link to a README without being asked to
- AI-generated code pasted in without being read, that fails the linter or has no tests
- A PR with no linked issue
- Duplicating a pull request that is already open
- Renaming variables or "improving" code nobody asked to change
These are always welcome
- Fixing a real bug, however small
- Adding a test that was missing
- Rewriting documentation that confused you, so it does not confuse the next person
- Improving an unhelpful error message
- Accessibility fixes
- Telling us our setup instructions are wrong
What happens next
-
Within 48 hours, a maintainer replies
That is a commitment. If it has been longer, say so in a comment on your pull request — you are not nagging, we dropped the ball.
-
They may request changes
This is the normal case, not a failure. It happens to people who have been writing code for twenty years. Push another commit to the same branch and the PR updates itself.
-
It gets merged
Your contribution is now part of the project, permanently, with your name on it.
Then do another one
Keep going. The second one is much easier than the first.