Folks,

We need to come to a conclusion on what we'll do about the build process
specifically as it relates to the source structure - if anything.  The
longer we wait the more disruptive and confusing it will be especially for
potential new contributors.

Background / Components / Points of tension:
- The 'Nifi API': This is a very small library which defines the interfaces
and some very basic abstract implementations or highly common functions.
The API is critical to building extensions and critical to the function of
the core application.
Frequency of change: Should be rare

- The core application: This is the implementation of the data flow engine,
the web services, class loading,
Frequency of change: Routine.

- Utilities: Things used by both the core and the extensions
Frequency of change: Routine

- Extensions: Processors, Prioritizers, Custom UIs, Reporting Tasks,
Controller tasks, etc... . These are the things we want folks to be able to
build - the intentional points of extension.
Frequency of change: Constant

As I think through these different concerns and how maven works it isn't
clear to me what a better model would be.  Having not yet gone through the
challenges of an official apache release I don''t appreciate yet what pain
points that brings either.

Our current model requires someone to know a lot of ordering for the
build.  But if we put a CI server behind it that would be less of an issue
except for those few folks that want to build the whole thing by hand.  For
that perhaps the build-order is sufficient.

So - we leaving it as is or is there a good proposal?

Thanks
Joe

Reply via email to