openzim / _python-bootstrap

Sample openZIM Python project bootstrap
1 stars 2 forks source link

Define a pull request template #33

Open benoit74 opened 9 months ago

benoit74 commented 9 months ago

Some projects have a pull_request_template.yml, but it does not look like there is a convention on this yet.

The template I've found so far is:

## Rationale

[//]: # (Briefly explain the reason behind this change.)

<!--
Issue: [Title](link) or #123 for Github issues.
-->

## Changes

[//]: # (Summarize what has changed.)

Some inconvenient I find in this template:

ChatGPT suggested me the following sections:

## Description

<!-- Describe the purpose of this pull request -->

## Changes Made

<!-- List the changes made in this pull request -->

## Screenshots (if applicable)

<!-- Include screenshots or images demonstrating the changes -->

## Testing

<!-- Explain how the changes were tested -->

## Related Issues

<!-- Mention any related issues or link to them -->

## Checklist

- [ ] Code follows project standards
- [ ] Tests have been added/updated
- [ ] Documentation has been updated
- [ ] Changelog entry added

And it should be named pull_request_template.md (it's not a yaml file 😅)

My remarks on ChatGPT suggestion:

I welcome all suggestions on this, I can handle the creation of a PR once arguments have settled a little bit.

rgaudin commented 9 months ago

I agree with your suggestions. To me there are only two objectives:

I don't care for structure ; most of the time it's a bad idea.

A single free text with good directions seems better to me. I really like the idea of providing links to our guidelines and what we expect (instead of just an obscure Rationale heading) and I think the checklist in the end is a great to to avoid structure while making sure people are informed about what's expected.

We can also specify that we are being notified automatically and that we'll assign it to a reviewer within a couple days.

benoit74 commented 9 months ago

👍

We can also specify that we are being notified automatically and that we'll assign it to a reviewer within a couple days.

I agree that first time committers should be informed that we will take care of their PR and there is no need to worry / notify us on many channels like we encounter too often. But at the same time, I would like they get the habit that we also have to ask for review on their own, allowing us to be sure when work is ready to be reviewed. We should find a formulation which makes this clear. WDYT?

rgaudin commented 9 months ago

I agree with the idea but I'm not sure how practical that is:

And I think that's the point of making a pull-request: you're supposed to be ready when you do (for initial review).

Maybe we can explain that a reviewer will authorize the tests (if that applies) and should those not pass, it's their responsibility to fix it and add a comment in the PR. Or we plain request that they mention when it's ready to review.