Using Gerrit for code review in KDE

Eike Hein hein at kde.org
Sat Sep 13 20:46:55 BST 2014



On 13.09.2014 21:10, Kevin Krammer wrote:
> So your suggestion would be to not have +2 but a policy of some sort that only
> the +1 of the maintainer, if there is an active one, is considered as "go
> ahead"?

Basically my thinking is roughly this: It actually happens
extremely rarely in practice that something gets committed
that needs to be reverted because it's actively objectiona-
ble. As Ivan pointed out, few of us will ever commit any-
thing if we're not confident it would meet with the approval
of our peers. We generally do a good job with seeking out
the opinion and approval of those in the know.

Yes, this requires a lot of trust - but we've always known
this; broad, equal write access requires just as much trust.
That's why we have a process for getting developer access
that tries to make sure those getting access have been
around long enough to understand the etiquette and can be
reasonably worked with; it's why getting developer access
involves peer review by other developers. The idea is that
trust can flow from this - when someone has a KDE developer
account you want to be able to rely on the fact that they
should have that account.

Having a +2 and restricting it to maintainers says we can't
trust KDE developer account holders. If this were actually
true, I think it would imply our process is broken on the
other end. The Manifesto is written in the spirit of rely-
ing on this trust mechanic.

But as said, I don't think it's actually true. I think we
*can* trust KDE developer account holders, and that's why
we don't need an extra safety net in the form of having a
+2 and restricting it to maintainers.

It's biasing the system in the wrong direction, and tries
to plan for an eventuality that happens extremely rarely
(and we have other safety nets: test suites, CI, beta
releases, ...), at the cost of making maintainer succession
more difficult down the road.

Maintainers should always think about the maintainers who
will one day replace them and make sure they can.


> If I brainstorm about alternatives I find:
>
> * let maintainers have -2 as pro-active variation of reverting

That still requires flagging people as maintainers in a
DB, though ...

We already flag maintainers on projects.kde.org, which as
mentioned I think was a mistake, but it mainly came about
for logistical reasons, not for security reasons. I think
we need to avoid using this as a precedent to entrench
maintainers elsewhere ACL-wise.


> * build social ettiquette to always wait for the maintainer's +1 but at most
> for a certain grace period, e.g. one week

I think this etiquette basically already exists in prac-
tice.

If I write a patch that touched complicated code in plasma-
framework that I know Marco knows much better than I do,
I'm not going to commit it without him having weighed in
on it. If Marco's on vacation I'll at least make sure
someone else thought through the problem and came to the
same conclusion as I did.

I fixed some bugs in KIO lately around file previews, and
struck up an in-depth conversation with David about it and
made sure I got his review and input for the changes I
needed.

And so on ... all without requiring a +2.


> * have everyone get +2 and use etiquette to do that only if there is already
> strong agreement or the grace period has passed

Seems best to me, assuming we can't change Gerrit to
remove the distinction entirely.


> Cheers,
> Kevin

Cheers,
Eike




More information about the kde-core-devel mailing list