Gentoo Archives: gentoo-dev

From: Andrew Savchenko <bircoph@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] RFI: A better workflow for github pull requests
Date: Sun, 13 Sep 2015 21:22:33
Message-Id: 20150914002220.55691ea41e5905518b294c86@gentoo.org
In Reply to: Re: [gentoo-dev] RFI: A better workflow for github pull requests by "Michał Górny"
1 On Sun, 13 Sep 2015 20:27:32 +0200 Michał Górny wrote:
2 > Dnia 2015-09-13, o godz. 20:56:07
3 > Andrew Savchenko <bircoph@g.o> napisał(a):
4 >
5 > > On Sat, 12 Sep 2015 21:12:25 +0200 Michał Górny wrote:
6 > > > Hello, everyone.
7 > > >
8 > > > The current workflow for handling github pull requests is at least
9 > > > suboptimal. Handling pull requests takes a fair effort from the few
10 > > > developers contributing there, and the progress is often stalled by
11 > > > package maintainers which are either unresponsive or not registered on
12 > > > github at all. That's why I'd like to get your ideas on how we could
13 > > > improve the workflow.
14 > > >
15 > > >
16 > > >
17 > > > Current workflow
18 > > > ================
19 > > >
20 > > > Let's summarize the current workflow first. Right now, there's a few
21 > > > Gentoo developers who actively monitor pull requests on gentoo/gentoo
22 > > > repository. Those developers review incoming pull requests and help
23 > > > submitters get their contributions in shape. Some of those developers
24 > > > also try to 'CC' (@-mention) package maintainers to get their attention
25 > > > on the pull request.
26 > > >
27 > > > Sadly, @-mentioning sucks for a few reasons:
28 > > >
29 > > > 1. Many of the Gentoo developers have different nicknames on GitHub.
30 > > > Some developers don't even set their real names which makes them even
31 > > > harder to find.
32 > > >
33 > > > 2. Teams can be created only by repository 'owners' (which pretty much
34 > > > is equivalent of Infra). Which practically means I'm the only person
35 > > > migrating teams (projects, herds) to GitHub.
36 > > >
37 > > > 3. GitHub notifications are not very reliable. Some developers get only
38 > > > some of them via mail, some don't. And some simply don't care.
39 > > >
40 > > > 4. Some developers openly refuse to work with contributors via GitHub.
41 > > > Proxying them manually is not really productive.
42 > > >
43 > > >
44 > > >
45 > > > Potential solution: bi-dir github <=> bugzilla integration
46 > > > ==========================================================
47 > > >
48 > > > My current idea would be pretty much that:
49 > > >
50 > > > 1. a new dedicated Gentoo bug would be automatically created for every
51 > > > pull request on github,
52 > > >
53 > > > 2. all comments from github would be automatically copied to bugzie.
54 > > > All bugzie comments would be automatically copied to github,
55 > > >
56 > > > 3. resolving the bug would automatically close the relevant pull
57 > > > request.
58 > > >
59 > > > This way, all pull requests can be assigned to package maintainers in
60 > > > Bugzilla without having to resort to GitHub user or team names. All
61 > > > involved parties would get more reliable Bugzilla notification mails.
62 > > > They could choose to either use the provided URLs to discuss the pull
63 > > > request on GitHub, or discuss it directly on Bugzilla, whichever is
64 > > > more convenient to them.
65 > > >
66 > > > The additional Bugzilla load should be manageable, though we may want
67 > > > to employ some kind of rate limiting in case someone though it'd funny
68 > > > to spam our bugzilla via spamming github.
69 > > >
70 > > > Problems:
71 > > >
72 > > > - handling line comments (probably a Bugzie comment with quoted code
73 > > > snippet),
74 > > >
75 > > > - handling comment edits and removals,
76 > > >
77 > > > - some people will get double mail for each comment,
78 > > >
79 > > > - extra bugs for existing issues (we shouldn't really try to reuse
80 > > > existing bugs for this).
81 > > >
82 > > >
83 > > >
84 > > > What are your thoughts? Any other proposals?
85 > >
86 > > Gentoo workflow should not depend on a proprietary tools like
87 > > github issue tracker and github pull requests.
88 >
89 > Thank you for your insightful comment. That's very helpful. Really,
90 > thank you a lot. Gentoo would be much worse without such helpful
91 > comments. Why do we need community at all, when one developer with his
92 > helpful comments can provide all there is ever needed by the distro.
93
94 Please don't mix need in the community with tight integration with
95 proprietary solutions leading to a hard dependency, loss of freedom
96 and independence.
97
98 Best regards,
99 Andrew Savchenko