Hi,

On 11/14/18 19:34, stephano wrote:
> We are currently researching several different options to help make
> contributing to TianoCore easier for the community. A big part of this
> effort will be enabling pull requests and allowing for a more
> customizable code review process.
> 
> I am looking for members of the community willing to answer a few
> questions about these solutions to allow us to evaluate our options
> quickly. The options are:
> 
> System/Tool        Investigator
> Phabricator        Rebecca Cran (thank you again :) )
> Github            ???
> Gerrit            ???
> Gitlab            ???
> 
> I have a list of questions that I can send out to each investigator.
> Assuming you are familiar with the software/system, these questions
> should be answerable with a couple hours of research, writing, and
> screenshots / examples.
> 
> Thanks in advance for your help!

So Phil and I worked on evaluating GitLab. Phil opened a merge request
(MR#2) at <https://gitlab.com/philmd/edk2-platforms/merge_requests/2>,
and we used that for the evaluation. It was a multi-patch series. Here's
how it went.

(1) I couldn't make comments tied to the commit messages of the patches.
I could make generic comments on the merge request itself. I could also
make code location-tied comments on the individual commits. So this was
a mixed result.

(2) The WebUI is incredibly resource hungry, in my Firefox setup anyway.
Even while just scrolling the diffs with the mouse wheel, one CPU of my
laptop was pegged at 100%, and the visual response lagged *hugely* after
my manual mouse actions. This affected "alt text" displays for icons,
and clicking icons/buttons as well. It was so annoying it made me *not*
want to look at the subject patch set at all, just so I could stop
dealing with the UI.

(3) I managed to figure out a way for fetching the topic branch that was
pending review / the merge request. So that was good.

(4) Once Phil force-pushed a non-ff update, the old branch head was lost
in the sense that (a) it was apparently no longer "named" by anything,
(b) I could no longer refer to the v1 history on a commit-by-commit
basis, only as a cumulative diff. First, I could only compare the
cumulative diffs between v1 and v2. Second, my v1 comments lost their
contexts -- they were displayed near the code snippets where I had made
them, but they were no longer connected to individual commits. I found
this extremely confusing -- basically, the commit boundaries and the
discussion contexts were lost for v1.

(5) I received *zero* emails about my own actions, and I couldn't figure
out where I could change that. (In GitHub at least there's an obscure
setting that can be toggled -- Brian Johnson told me about that, thanks
again.)

(6) As I was about to add another comment to MR#2, Phil did something
(I'm unsure what -- maybe the action was the opening of MR#3?) that
killed MR#2 altogether. All the comments, even the MR#2 summary, were
lost. The first symptom that made me notice this was that when I clicked
the "Comment" button under MR#2, GitLab complained that there must have
been a network error, because saving the comment failed. In reality MR#2
had been killed by then -- I realized that when I attempted to reload
MR#2 in full. See
<https://gitlab.com/philmd/edk2-platforms/merge_requests/3>.


Note that the above summary may be incomplete. Due to a combination of
(5) and (6), that is, due to no emails of my own actions and due to MR#2
vanishing without a trace, I can't re-read our discussion in MR#2.

Quite unintentionally, this ended up being *splendid* evidence why I
absolutely insist on a complete email audit trail.


If I missed various aspects of GitLab (which is quite likely), please do
educate me. I don't mean to say that everyone else should stop
investigating GitLab -- perhaps more seasoned GitLab users can fill the
potholes I fell into.


After having looked at GitHub, Phabricator, and GitLab, my personal
preference remains the mailing list. A *distant* second is GitHub.
(GitHub is "almost there", but its emails significantly lack context.)
And Phabricator and GitLab just don't cut it for me; Phabricator doesn't
map to multi-patch series to begin with, and GitLab is too resource
hungry, and it did a terrible job (for me anyway) preserving history.

Can someone setup Gerrit for a test drive?...

(Honestly, at this point, I'm slightly scared/prejudiced of what I might
find there.)

Thanks,
Laszlo
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to