On Thu, 26 Jul 2012 23:43:51 -0700, Ryan Lane <rlane32(a)gmail.com> wrote:
On Thu, Jul 26, 2012 at 10:57 PM, MZMcBride
<z(a)mzmcbride.com> wrote:
Ryan Lane wrote:
You've already admitted that you don't
use Gerrit, so do you have a
really large stake in this?
Before it was replaced, I used MediaWiki's CodeReview quite a bit. Like
most
people, I think I would use Gerrit more if it weren't so awful. Just
tonight
I was trying to get an index of Gerrit contributors (owners, I guess the
term is). Something similar to this list from the SVN system:
<https://www.mediawiki.org/wiki/Special:Code/MediaWiki/author>.
Apparently
Gerrit doesn't have a feature to list authors like this. All I wanted
to do
was find a particular user and look at his contributions. And, as
usual, it
took twenty minutes instead of ten seconds because Gerrit sucks.
So, you found something you'd like added to the software: a user list.
Have you entered a bug? The problem you are encountering is that you
are used to a piece of software, and the new software doesn't have the
exact same feature set. This happens, and will happen with any new
tool if we switch, too.
There's an open bug for this:
https://bugzilla.wikimedia.org/show_bug.cgi?id=35508
Note that the bug mentions a number of ways you can get a user list
outside of Gerrit. I think it would be nice to have Gerrit itself have
the user list interface. With extension support in Gerrit 2.5, we may
be able to implement it ourselves.
How does anyone use Gerrit?
I use it successfully every single day. I review code, I add changes,
I get statistics on repos. It works well for me. Guess what? I find
the old code review system to be just as hard to use as Gerrit. Know
why? I didn't use the old code review system much.
Every
release *has* been much better and the releases are often, and
that's a great thing. It's not a corporate justification, it's
reality. Having a really responsive and active upstream is awesome.
You'll have to forgive me, but the only way I can read this is, "the
car now
breaks down two minutes into the journey; it used to break down a minute
in!"
This is a fallacious argument. For most use cases Gerrit works
perfectly well. The fixes coming in each release are easing some of
the use cases that don't work so well.
Maybe as a non-developer Gerrit doesn't do what you want. As a
developer it does most of what I want. It doesn't do some things I
want, though. I want free-form tagging, for instance, which is on the
roadmap for a future release (and Chad has already started adding in
code that is required for this feature).
I want whatever review system we use to support real review branches;
- Review sets are heads with multiple commits, not single commits.
- We don't amend commits, we make new ones to the head of the review
branch.
- -no-ff merge commits are used so that only the final commit code makes
it directly into master.
Scrap all the other complaints. This pattern of amending commits is by far
the worst thing about our current workflow.
Development history and minor contributions that never make it into the
repo. "Committer" going to the person who fixes a typo rather than the
person who writes the code. Confusion over whether someone has rebased or
let unrelated changes leak into their patchset. Huge development effort by
multiple people potentially turning into a single commit with a single
committer. ...
At this point I think the real question we have is this:
"Can we reasonably get Gerrit to support real review branches?"
If that answer to that question is no. Or "not without very significant
development". Then the only option we have is to track down the system
that we can get to support that with the most reasonable amount of
development effort.
I know people complain about Gerrit a lot, but I
personally find it
much better than our previous toolset.
I think a lot of people are frustrated by the fact that the types of
problems being encountered in Gerrit would typically be trivial to fix
(CSS
precedence, for example). The fact that they're not runs against a lot
of
core Wikimedia principles.
As mentioned at least twice already in these threads, this is simply
not true. It's possible to fix the CSS right now (and if you look at
OpenStack's Gerrit, you'd notice they've already done so).
We can
just give people accounts now, and we eventually allow
people to self-register as well. In fact, this is one of my top goals
after upgrading openstack and adding a new Labs zone in eqiad.
Yes, self-registration would be fantastic. :-) I commented on this bug
last
Saturday: <https://bugzilla.wikimedia.org/show_bug.cgi?id=37628>
("Creating
a Git/Gerrit/Labs account requires human intervention"). I realize that
you
and the other ops folks are busy, but if someone could at least explain
the
current process, it would give volunteer developers a fighting chance of
helping out. Not having the faintest idea how the current account
creation
process works, I can't help or find anyone to help make it better.
I could have sworn there was another bug open for this that documented
what needed to get done. I just spent a few minutes updating the bug.
It's likely a fairly small OpenStackManager change, and a labsconsole
configuration change. As mentioned it's on my list after Labs
upgrades. If someone else wants to tackle it first, I'd love that.
- Ryan