[ImageJ-devel] [IMGLIB] moved algorithm and stats packages out of imglib2-core

Jean-Yves Tinevez tinevez at pasteur.fr
Wed Feb 29 14:54:05 CST 2012


Hi all

On 29-Feb-12 21:30, Curtis Rueden wrote:
> Hi Tobias,
>
>     I moved the net.imglib2.algorithm and net.imglib2.stats packages
>     from the imglib2-core into the imglib2-algorithms sub-project (because
>     thats where they should belong.)
>
>
> The problem with moving things from core to algorithms right now is 
> that implicitly, it changes the license from BSD to GPL. ImageJ2 
> cannot include imglib2-algorithms, because of this license difference.
>
[snip...]
>
> The tricky bit is, the other primary motivator for multiple JARs is, 
> as touched on above, licensing. We need to balance and reconcile those 
> two needs. The most surefire solution is to have a separate module/JAR 
> for each combination of licenses and dependencies---and hopefully that 
> number of modules remains manageable.
>
> Maybe it is time to split up imglib2-algorithms into multiple 
> submodules? I would be happy to do it, if we all agree.


So if I get the bug picture correctly and try to summarize it:

- ImageJ2 is a standalone software, that only contains BSD pieces. It 
uses as its core imglib2, and the concerned packages (core, io, nothing 
else, right?) are all BSDs. The BSD license was chosen to facilitate 
dissemination in other softwares, e.g. commercial ones (I am pretty sure 
I got it wrong there).

- Fiji is distribution that includes ImageJ2. It is GPL3 and as such 
allows extra goodies, such as the imglib2 packages that are not BSD, 
like the algorithms. imglib2 algos are GPL3 so that we constrain 
creations based on these algos to be GPL3: then we (Fiji community) can 
benefit.

Right?


Then the way to know what should go to core vs algorithms depend on what 
ImageJ2 want to offer. There might be a list of target features for 
ImageJ2: when they are all implemented, the IJ2 team know that the soft 
has reached version 1.0.

So, any part of imglib2 that is needed to complete this list of feature 
should go to the core.

In that view, Curtis said that having the ability to display histograms 
is a IJ2 core feature, so it should go to the core. The FloydSteinberg 
dithering is more like a plugin, so it can go to algorithms. But why 
algorithms could not be a single large package?

Does that make sense?

cheers
jy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://imagej.net/pipermail/imagej-devel/attachments/20120229/ebdb9524/attachment.html>


More information about the ImageJ-devel mailing list