I think we can follow current logic of splitting on  java/java8/scala
examples and new profile 'LGPL' where new module will be activated

On Wed, Sep 30, 2015 at 12:30 PM, Anton Vinogradov <avinogra...@gridgain.com
> wrote:

> I offer to split examples to 2 modules:
> 'examples' and 'lgpl-examples'.
> Ignite convenience binaries will contain only 'examples' project, but user
> will have opportunity to download sources and using lgpl profile build
> 'lgpl-examples'.
>
> On Wed, Sep 30, 2015 at 11:49 AM, Branko Čibej <br...@apache.org> wrote:
>
> > On 30.09.2015 10:30, Dmitriy Setrakyan wrote:
> > > On Wed, Sep 30, 2015 at 9:45 AM, Branko Čibej <br...@apache.org>
> wrote:
> > >
> > >> On 30.09.2015 09:29, Dmitriy Setrakyan wrote:
> > >>> On Wed, Sep 30, 2015 at 8:25 AM, Sergey Kozlov <skoz...@gridgain.com
> >
> > >> wrote:
> > >>>> I filed the ticket:
> > >>>> Build examples failed from binary fabric package
> > >>>> <https://issues.apache.org/jira/browse/IGNITE-1579>
> > >>>>
> > >>> I think the reason is that we do not upload Ignite LGPL integrations,
> > >> e.g.
> > >>> ignite-hiberbnate artifact to maven central. I don't see why we do
> not,
> > >>> because even though they depend on some LGPL-based code, the ignite
> > >> module
> > >>> itself is licensed under ASL.
> > >>>
> > >>> Can we upload these artifacts manually?
> > >> We've been through this any number of times, yes? We cannot distribute
> > >> (L)GPL dependencies. If you can't run a reasonable grid that doesn't
> > >> depend on LGPL-licensed modules, then those modules are not "optional"
> > >> by any reasonable definition.
> > >>
> > >> It's quite all right to have examples that require those modules; just
> > >> tell users that if they want to run those examples, they'll have to
> > >> build Ignite (or at least the LGPL dependencies) themselves.
> > >>
> > >
> > > Hm... I thought that ignite-hibernate module could still be published
> to
> > > Maven because the module itself is licensed under ASL2.0 license.
> >
> > People keep misunderstanding the LGPL. You really should read it. The
> > "module itself" cannot be licensed under ALv2. For example, this is
> > LGPL2.1 section 5 paragraph 2:
> >
> >     However, linking a "work that uses the Library" with the Library
> >     creates an executable that is a derivative of the Library (because
> >     it contains portions of the Library), rather than a "work that uses
> >     the library". The executable is therefore covered by this License.
> >     Section 6 states terms for distribution of such executables.
> >
> >
> > In other words, as soon as you *build* something that is linked with
> > LGPL, it's covered by the LGPL. The sources of the module can be ALv2,
> > but the built module isn't.
> >
> > This is why ASF policy forbids mandatory (L)GPL dependencies and
> > absolutely forbids releases containing (L)GPL code. And whilst the
> > binaries we put on Maven aren't "releases", they must follow these
> > policies.
> >
> > > If not, then we should not include these modules into the main set of
> > > examples, primarily because there is no way for a user to build them
> out
> > of
> > > the box.
> > >
> > > I see 2 solutions:
> > >
> > > 1. Remove modules that depend on LGPL from the examples altogether.
> > > 2. Add a separate LGPL folder in examples, which will not be included
> > into
> > > the POM file with a special README explaining how to build them.
> >
> >
> > Option 2 is acceptable.
> >
> > -- Brane
> >
> >
>



-- 
Sergey Kozlov

Reply via email to