json-schema-spec icon indicating copy to clipboard operation
json-schema-spec copied to clipboard

Automate some of the PR things

Open gregsdennis opened this issue 4 years ago • 7 comments

@Relequestual requested that some things be automated. One of those things included ensuring that an issue be associated with PRs. This is the issue associated with the PR that adds automation to ensure that issues are associated to PRs.

gregsdennis avatar Feb 01 '21 07:02 gregsdennis

@karenetheridge: “all PRs should have an associated issue” — I mostly agree, except for draft PRs - as sometimes, the best way to express an idea is to show the patch for it

@gregsdennis When you say you want to automate this, what does that mean? Will there be a way to skip this requirement when it's appropriate? For example, a bot comment on a PR that says "Hey! Did you forget to link an issue" would be great. It's a nudge that keeps us honest, allows us to ignore when appropriate, and takes the burden off of us to respond to new contributors with such a message. On the other hand, not allowing a PR to be created or auto-closing or blocking merge or blocking discussion would make the process unnecessarily rigid IMO.

jdesrosiers avatar Feb 01 '21 19:02 jdesrosiers

@jdesrosiers please see the PR. It puts a checklist on the opening comment, then ensures that all items are checked.

gregsdennis avatar Feb 01 '21 19:02 gregsdennis

I just looked at it, but I'm afraid I'm still confused. I don't have experience with Github Actions and looking through the configuration wasn't helpful without a baseline understanding.

What does "ensures that all items are checked" mean? Does that mean merge is blocked until all items are checked? Does the checkbox ensure that you can't check it if there isn't an issue linked? Or, is it just a nudge and we can check it if we have a good reason to not need an issue?

jdesrosiers avatar Feb 01 '21 19:02 jdesrosiers

Does that mean merge is blocked until all items are checked?

The build will fail, but it doesn't completely block merging, just like any other build process.

Does the checkbox ensure that you can't check it if there isn't an issue linked? Or, is it just a nudge and we can check it if we have a good reason to not need an issue?

It's superficial. There is no actual check. The action adds the checklist then checks to ensure all items are checked. That's as deep as it gets.

gregsdennis avatar Feb 01 '21 20:02 gregsdennis

I like checklists, but I'm not sure that having an associated issue is a good thing to include in a checklist if it's not a hard requirement. It leaves things in a weird state when skipping is appropriate. Either you have to check to box and lie or ignore the build error. Lying is a better option than ignoring a build error, but it's not great.

jdesrosiers avatar Feb 08 '21 18:02 jdesrosiers

The comment can be edited, too, to remove the check item...

gregsdennis avatar Feb 08 '21 19:02 gregsdennis