-
Notifications
You must be signed in to change notification settings - Fork 529
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Discussion for enriching the Github templates #3214
Comments
I am not quite certain what the difference between Checklist and the Author's Checklist is - could you explain that a bit more? |
The main difference comes from the perspective: meanwhile I'm seeing the second one as optional in other teams, so feel free to discard this section (or any other) in the template. |
You mean "feature"? Feature request would make sense for issues. I'm not sure I see how these labels (particularly feature/enhancement) are useful for PRs anyway. Do you have use cases in mind? They're great for issues - for backlog prioritisation, etc. |
I think this is not pertinent to most PRs. If you're doing a big refactoring, sure - explain the new architecture and the reasoning behind it. If you're introducing a new messaging pattern, explain the implications on concurrency, etc. (On the topic of refactoring, I'd like to add a suggestion that any significant refactoring or style changes are made independently of functional changes. This allows reviewers focus appropriately.) I think we should combine the "What" and "Why" sections into just "Summary" or similar. It's more helpful to lead with the motivation, since it assists the reviewer in understanding the importance of the changes while reading through them. If the changes are self-evident, then it's not helpful to repeat it in the description when we can look at the code. It can even be problematic - if the code ends up changing during review, and the description doesn't get updated, then when coming back to the PR to understand the change in the future it may be very confusing. Suggestion: Motivation and summary of changesPlease explain the motivation behind this PR, along with a summary of the major changes involved. |
"Author's checklist" might be useful for people to convey some notes to the reviewer. I think we should start minimal (i.e. without it), and iterate. |
Finally:
Which would leave:
|
Let me send a PR with this feedback :) Thank you all! |
chore: update PR template for contributions (#3214)
We'd like to enrich the existing PR template adding a few sections that we consider helpful during the review process for a PR, making it even better.
In this template, besides the checklist that we already have, we'd like to define the following structure, where:
You could see examples for Beats, and APM Agent Java
We will also use this markdown format (H2 and HTML comments) for the other templates you already have.
The initial template: ⬇️⬇️⬇️⬇️
A few suggestions about filling out this PR
What does this PR do? (Mandatory)
Explain here the changes you made on the PR. Please explain the WHAT: patterns used, algorithms implemented, design architecture, message processing, etc.
Why is it important? (Mandatory)
Explain here the WHY, or the rationale/motivation for the changes.
Checklist (Mandatory)
Add a checklist of things that are required to be reviewed in order to have the PR approved
List here all the items you have verified BEFORE sending this PR. Please DO NOT remove any item, striking through those that do not apply.
List here all the items you have verified BEFORE sending this PR. Please DO NOT remove any item, striking through those that do not apply. (Just in case, strikethrough uses two tildes.
Scratch this.)Update your local repository with the most recent code from the main repo, and rebase your branch on top of the latest master branch. We prefer your initial changes to be squashed into a single commit. Later, if we ask you to make changes, add them as separate commits. This makes them easier to review.
Run the test suite to make sure that nothing is broken. See https://github.com/elastic/apm-server/blob/master/TESTING.md for details.
Author's Checklist (Recommended)
Add a checklist of things that are required to be reviewed in order to have the PR approved
How to test this PR locally (Recommended)
Explain here how this PR will be tested by the reviewer: commands, dependencies, steps, etc.
Related issues (Recommended)
Link related issues below. Insert the issue link or reference after the word "Closes" if merging this should automatically close it.
Use cases (Recommended)
Explain here the different behaviors that this PR introduces or modifies in this project, user roles, environment configuration, etc.
If you are familiar with Gherkin test scenarios, we recommend its usage: https://cucumber.io/docs/gherkin/reference/
Logs (Recommended)
Paste here output logs discovered while creating this PR, or any other output you consider important to be shared with the team. It could be a stacktrace, logs of a library...
Screenshots (Optional)
Add here screenshots about how the project will be changed after the PR is applied. They could be related to web pages, terminal, etc, or any other image you consider important to be shared with the team.
The text was updated successfully, but these errors were encountered: