On Wednesday, October 18, 2017 11:13:37 AM Saša Živkov
wrote:
> On Tue, Oct 17, 2017 at 3:55 PM, Martin Fick
<
mf...@codeaurora.org> wrote:
> > On Monday, October 16, 2017 10:17:11 PM Saša Živkov
wrote:
> > > Even if it is a core plugin, it is still a plugin so
> > > it is optional. Who runs Gerrit without the basic
> > > download commands? I mean, someone may not run the
> > > replication plugin or the reviewnotes plugin but
> > > running
> > > Gerrit without download commands just makes no sense.
> >
> > There are many reasons to keep (and push more stuff to
> > move) plugins, even if we feel they are important as
> > part of Gerrit by default. A few of the reasons are,
> > the ability to customize things, release things
> > independently (bug fixes),
> I understand your points but if we keep moving more and
> more stuff into plugins the ultimate question is:
> What is (core) Gerrit?
Glad you asked. I would argue that the most valuable
fundamental piece of Gerrit is actually the git server,
likely that includes the ACL mechanism. But I can imagine
even that being pluggable to be able to have simpler
mechanisms available. Gerrit provides one of the best git
servers in the world, likely the most configurable. Many
people use Gerrit only for this. We use it that way in many
places despite also using it for code review in other
places. One could say that a Gerrit slave is not much more
than that.
I think that if it were possible to build Gerrit as a git
server only which accepted plugins, without code review,
that it would likely get used by more people, and more
projects. For example, some people may want to run gitiles
without running code review, but without loosing the ability
to have ACLs. If this were feasible, it would likely be
more appealing to some since it would mean running a much
reduced jvm footprint, and a simpler codebase to work with.
If this indeed increases the usage of Gerrit, I suspect that
the core git serving features of Gerrit would get more
robust, by virtue of likely seeing an increase in
contributions due to an increase in users.
Now you might say, such a beast is not Gerrit, and that is
probably a valid point. Does that mean that such a beast
would not be a good building block for Gerrit to build upon?
If we has such a beast, what would we call it? Maybe "Grit"
(for a shorter Gerrit) or GGIT? :)
> REST API. Shall REST API be moved out into a plugin too,
> to further optimize for the "Git server with ACLs"
> use-case?
> Shall UI be moved into a plugin too?
Yes, you read my mind. After all, as mentioned above, those
feature are already ignored by many people,