-
Notifications
You must be signed in to change notification settings - Fork 76
pr review guidelines
This document aims to provide a set of guidelines to encourage developers to submit more pull request (PR) reviews. Adhering to the guidelines will improve the consistency and quality of our code and make sure we are all on the same page.
- Automated dependency updates -- these are typically straightforward
and only require approval before merging.
- if a check is failing
- if it's something impacted by your changes, please address the failure in order to help the PR move along
- if it's something complicated, needs more time or is related to test instability, comment on the PR about any findings and bring this up in the core channel, where we will either
- provide assistance or
- get confirmation to create a follow-up issue
- if a check is failing
- Documentation updates
- review and approve if everything looks good from an editorial perspective
- mention @geospatialem, @DitwanP, or @macandcheese to review and ensure tone consistency
- If there are visual changes associated with a PR
- make sure to apply the
pr ready for screenshot tests
label- if there are additional visual changes since the last screenshot test run, this label will need to be removed then added again to schedule another test run
- mention @SkyeSeitz and @ashetland to approve screenshot updates
- make sure to apply the
- If a follow-up issue is needed during the PR review
- mention @geospatialem, @brittneytewks, so a related issue can be created, estimated, and prioritized for an upcoming milestone
- provide context and details for the new issue(s) to better we prepare ourselves for future follow-up work
- If PR checks are failing unexpectedly
- reach out in the Core -- General Teams channel about this and cc @benelan and/or @jcfranco.
When a pull request is strictly intended to deprecate an existing feature or component, use the deprecate
commit type. This type is reserved for noting changes under the "Deprecations" section of the changelog.
If deprecations are part of a broader change, such as introducing a new feat
or making a fix
, a deprecate
entry can be added to the bottom of the PR body following the format described in the release-please documentation.
PR title:
feat(avatar): add in an awesome new feature ✨
Description:
This PR adds in feature x which will make everything work flawlessly forever.
deprecate(avatar): remove old unnecessary property 🗑️
deprecate
entry at the bottom of the PR body as shown above.
- In addition to requesting a review on GitHub, the quickest way to get attention for your PR is to post a message in the Core - Development Teams channel.
- Before starting a review on a non-draft PR (see Draft PRs below), use the 👀 reaction to let others know the PR is being reviewed.
PRs in a draft state should not be reviewed unless explicitly asked to. This is done to minimize time focusing on code that might change.
When commenting, it is crucial to provide the (PR) author with the priority/context of each comment, e.g., what must be changed, what's a nice-to-have, etc.
Use the following syntax to shed light on the type of comment:
-
Nitpick
: minor adjustments that shouldn't prevent merging -
Suggestion
: alternative approach that shouldn't prevent merging -
Sidebar
: a relevant note that is not critical to the reviewed PR (should either stem a discussion or an issue/PR to follow-up) -
Typo
: address typographical errors (these should be fixed before merging)
Be as specific as possible in your comments to offer reasoning and avoid misinterpretation.
If there is a lot of back-and-forth between the reviewer and author, reach out via chat or schedule a call to make sure everyone is on the same page. Once everything is resolved, make sure to summarize the discussion points and resolution in the PR before moving forward.
Focus on the following items while reviewing:
- Consistency (naming, patterns, etc.) 📚
- Adhering to guidelines 🤝📚
- If applicable, improvements or alternatives to a solution
- Typos and grammar
- PR title adheres to conventional commits 🤝
- Ensure all files are relevant to the associated issue
- Make sure to ask clarifying questions about changes if you don't understand something. This helps share the knowledge and can help identify information that might be useful to add as comments or rename variables/functions to make the code clearer.
The contributing 🤝 and conventions 📚 doc are excellent resources with additional information on the above.
You can approve a review if there are a couple required changes, as long as they are straightforward. However, make sure to "request changes" if the changes require a second pass from you.
It's always better to be explicit and comment whether the PR is good to merge after making adjustments or if you'd like to be requested for another review once changes have been made.
Getting extra pairs of eyes on reviews is always a good idea, but not necessary. If you'd like to get someone else to take a look, please mention them or add them as reviewers. Similarly, if you are unfamiliar with the changes, please call this out to give a better idea on whether additional reviewers may be needed. If you're unsure on who to contact, refer to the Areas of Focus page for guidance.