Gentoo Archives: gentoo-project

From: "Michał Górny" <mgorny@g.o>
To: gentoo-project@l.g.o, "Anthony G. Basile" <blueness@g.o>
Subject: Re: [gentoo-project] Call for Agenda Items -- Council Meeting 2015-10-11
Date: Thu, 08 Oct 2015 14:10:32
Message-Id: 9C591B75-DE0D-4AB6-8A6E-89FA178513BF@gentoo.org
In Reply to: Re: [gentoo-project] Call for Agenda Items -- Council Meeting 2015-10-11 by "Anthony G. Basile"
1 Dnia 8 października 2015 14:58:14 CEST, "Anthony G. Basile" <blueness@g.o> napisał(a):
2 >On 10/8/15 8:42 AM, Andrew Savchenko wrote:
3 >> Hello all,
4 >>
5 >> On Wed, 30 Sep 2015 20:45:10 +0200 Michał Górny wrote:
6 >>> The second issue that may need Council's attention is developers'
7 >>> attitude towards pull request source via GitHub.
8 >>>
9 >>> One and a half month since enabling it, we already had almost 150
10 >pull
11 >>> requests from Gentoo users (and a few Gentoo developers who use this
12 >as
13 >>> a collaboration tool). Sadly, some developers not only refuse to use
14 >>> GitHub (which is an acceptable choice) but also have very negative
15 >>> attitude towards users submitting pull requests and the developers
16 >>> helping with them.
17 >>>
18 >>> The point is, if we want users to submit pull requests, we should be
19 >>> handling them. Then we can't really agree on some developer refusing
20 >to
21 >>> look at the request, and requesting the user to re-send it some
22 >other,
23 >>> less convenient way. Or another developer just silently ignoring
24 >every
25 >>> request and rudely responding to pings.
26 >>>
27 >>> Since the amount of work necessary to proxy between users
28 >>> and developers who refuse to use GitHub is huge, I have prepared
29 >>> a script that opens Bugzilla bugs for GitHub pull requests
30 >>> and bidirectionally copies comments between them, therefore allowing
31 >>> Gentoo developers to handle pull requests via Bugzilla at their
32 >>> convenience. However, it is currently waiting for review and
33 >approval
34 >>> by Robin before it will get deployed.
35 >>>
36 >>> But even then, I need to make sure the developers will actually use
37 >it
38 >>> politely. Developers can't really close those bugs 'because it's
39 >>> GitHub', or 'attach a patch', or 'duplicate of #nnnnnn' (because
40 >>> it's a synced bug, it can't be magically coerced into existing bug).
41 >>> In fact, I mailed bug-wranglers about this already but I got no
42 >reply.
43 >> I'd like to ask the Council to consider pros and cons of this issue
44 >> with extreme care. Benefits and dangers of the integration with the
45 >> proprietary GitHub service were discussed many times already,
46 >> starting from [1].
47 >>
48 >> While the GitHub integration allows to receive a bit more
49 >> contributions, it contains long-term dangers of the Gentoo Social
50 >> Contract violation and loosing independence of the infrastructure
51 >> and the development workflow itself.
52 >>
53 >> I propose that we should draw a line which should not be crossed to
54 >> satisfy both the Social Contract and freedom of people to use
55 >> whatever tools they want, including GitHub. As a first approximation
56 >> I suggest the following:
57 >>
58 >> All connections with external infrastructure should be done in a
59 >> such way, that in case this external infrastructure will instantly
60 >> and permanently disappear, we should not loss any valuable data
61 >> and metadata, including commits, commit history, discussions,
62 >> patches, issues, bug reports and so on.
63 >
64 >Thanks for this language Andrew. It reflects my concerns and I can
65 >support it in the council.
66 >
67 >>
68 >> As far as I understand Mgorny's proposal, it implies that pull
69 >> request issues and patches will be mirrored on bugzilla, but not
70 >> patches themselves. In my opinion this is not acceptable, since
71 >> violates both the Social Contract (by dependence on propietary
72 >> metadata, such as GitHub issues (and pull request is a special type
73 >> of issue on GitHub)) and Bugzilla's policy of having all patches
74 >> attached to the Bugzilla.
75 >
76 >I'm hopeful that Michal will be able to figure out a technical
77 >solution.
78 >
79 >I have one situation where I wanted a user to post his patches to our
80 >bugzilla for discussions but he did not. As a result I was unable to
81 >discuss them on our bugzilla, nor commit them in their current state.
82 >I
83 >could have discussed them on github but I did not want to create a long
84 >
85 >discussion history there, since that's supposed to be on bugzilla. So
86 >
87
88
89 I see a few problems with that:
90
91 1. Should we create separate patches for each commit? If we don't, we discard history.
92
93 2. Should we attach the patches separately or tar them? The latter is inconvenient, the former can create a lot of patches.
94
95 3. Each update implies mass obsoleting of all patches.
96
97 4. Bugzilla has attachment size limit that we'd have to account for.
98
99 Now imagine a pull request doing mass fixing. Git can handle that with ease. For bugzie it will be a serious mess.
100
101 Potential alternative is to back-mirror pull requests in git.gentoo.org and work on that. But that's likely to cause even more uproar.
102
103 >>
104 >> I honestly do not understand why developers should be forced to
105 >> violate the Social contract under the excuse of "being polite" to
106 >> GitHub contributors nor why such actions should be allowed at all.
107 >There may be a technical solution where we can mirror pull requests,
108 >bugs and patches on bugzilla.
109 >
110 >As a side note, this approach to pushing through agendas by creating
111 >situations where its easier to accept a "solution" rather than reject
112 >it
113 >is not going to work in Gentoo. We have lots of smart people that see
114 >through this. If we wind up being "impolite" to our users, the blame
115 >belongs to those who created that situation in the first place, not to
116 >the council. The Social Contract is correct and I'm not going to
117 >support anything that violates it.
118 >
119 >>
120 >> [1]
121 >>
122 >https://archives.gentoo.org/gentoo-project/message/27e8b99db6fcd2654fc2548a605f0b70
123 >>
124 >> Best regards,
125 >> Andrew Savchenko
126
127 --
128 Best regards,
129 Michał Górny

Replies