Use GitHub Pull Request assignees more and dependency upgrade related Pull Requests

Hi dev,

We had a chat with some of the committers to discuss how to better deal with waiting Pull Requests and discussed using the assignees metadata more.

1. Use assignees

The idea is to set as assignee the committer who is planning to be the one doing the final merge. This also involves making sure to ping others to gather accurate review for the pull request if parts of the changes are not the assignee’s strong suit (which currently tend to often cause a “yeah someone will need to take responsibility for this PR as I’m not the right person for this part” reaction).

2. Dependency upgrade pull requests

Apart from this very generic strategy, we also discussed default assignees for some specific types of pull requests in xwiki-commons, xwiki-rendering and xwiki-platform repositories: dependency upgrade related pull requests (mainly Renovate):
a. for webjar Maven dependencies: @mflorea(@mflorea on GitHub) proposed himself
b. for non-webjar Maven dependencies: I’m proposing myself (@tmortagne on GitHub)
c. for npm dependencies: @mleduc (@manuelleduc on GitHub) proposed himself

Of course, this is just a default assignee and any of those issues could be assigned to someone else in a case by case basis. Either by the assignee itself, because he/she knows that some upgrade requires someone with more experience with that specific dependency because something changed (for example I assigned @vmassol to Update elasticsearch.version to v8.15.2 by renovate-bot · Pull Request #3334 · xwiki/xwiki-platform · GitHub because there is a breaking change in Elastic search client API), or by discussing quickly with the current assignee if you want to take care of a specific upgrade.
We’ll see if we can find good rules in Renovate to automate this a bit, but for now anyone who has the right should try to think about setting an assignee any new upgrade pull request, if it’s not already done.

WDYT ?

Here is my +1 for 1 and 2 a/b/c.

1 Like

+1 for all this as well. Thanks

+1 as well.

Thanks,
Marius

Sounds good. Let’s try it and see if it improves the rate of applying PRs.

+1 thanks

One thing I forgot to mention in the general assignee rule (1) is that committers would be assigned to their own pull requests. And it should be reflected in the assignees field (i.e. make official what has been the practice so far) so that it’s more clear which pull requests are not assigned yet.

2 Likes

5 +1

This is now documented on https://dev.xwiki.org/xwiki/bin/view/Community/DevelopmentPractices#HPullrequests.

I also configured Renovate to automatically follow those rules for xwiki-platform (xwiki-rendering and xwiki-commons only referencing non webjar Maven dependencies I just told Renovate to assign everything to me).

1 Like