At Apache we don't like umbrella projects - that is projects that can stand on 
their own as separate projects being gathered together under one-uber project. 
This tends to be damaging for community development. However, there is nothing 
wrong with one project having multiple "services" each represented as a 
separate project within a parent PMC when those services are not useful 
projects outside of Fineract itself.

Another warning sign is if the services start to build their own governance 
structure within the parent project. Merit earned on one part of a Top Level 
Project gives equal authority over all other parts. Now you may have social 
policies that say "don't touch code you don't understand" but you can't have 
byelaws that prevent it. If it is necessary to separate your community in this 
way then you probably need to have multiple TLPs.

So the answer is "it depends ;-)

Ross

> -----Original Message-----
> From: Markus Geiß [mailto:markus.ge...@live.de]
> Sent: Wednesday, May 25, 2016 12:29 AM
> To: dev@fineract.incubator.apache.org
> Subject: RE: [MENTORS] multiple repos for one Apache Product?
> 
> ----------------------------------------
> > Date: Tue, 24 May 2016 20:33:06 -0700
> > Subject: Re: [MENTORS] multiple repos for one Apache Product?
> > From: ro...@shaposhnik.org
> > To: dev@fineract.incubator.apache.org
> >
> > On Tue, May 24, 2016 at 5:27 AM, Myrle Krantz <mkra...@mifos.org>
> wrote:
> >> Hi Mentors,
> >>
> >> I asked this question in the thread on microservices, but the e-mail
> >> was long and most of the content was not relevant for you guys so you
> >> may have missed it:
> >>
> >> As far as I can tell the current mode of operation at Apache is one
> >> repository to one product. I would prefer to work with one repository
> >> per service. I believe that would help programmers remain strict
> >> about division of labor between the services, and think more
> >> carefully about interface breaking changes. Is there any reason a
> >> product can't have multiple repositories?
> >
> > Multiple repos are, of course, permissible. However, the question you
> > should be asking your self are more along the lines of how much of a
> > de-couple release policy AND community participation do you want to
> > have between these projects. Because the thing is, if your repos are
> > independent enough wrt. release schedules AND independent enough
> > regarding who commits to them ASF will be asking a question of breaking
> you into a set of projects.
> >
> > Does this answer you question?
> >
> > Thanks,
> > Roman.
> 
> Hey Roman,
> 
> thanks for the answer. ; o)
> 
> To provide a little more context. We are currently working on a per-service
> repository approach to reduce unwanted cross service usage of internal classes
> and implementations.
> 
> Every business domain will become a micro service and a single repository with
> multiple modules.
> 
> Do you think this approach would lead to get asked by ASF to break into
> multiple projects? It wouldn't be that bad if we'd treat these as sub-project 
> of
> Fineract as the TLP umbrella for them.
> 
> Best,
> 
> Markus
> 
> .::YAGNI likes a DRY KISS::.
> 

Reply via email to