Return-Path: X-Original-To: apmail-karaf-user-archive@minotaur.apache.org Delivered-To: apmail-karaf-user-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A78E010517 for ; Fri, 10 Jan 2014 07:22:25 +0000 (UTC) Received: (qmail 57550 invoked by uid 500); 10 Jan 2014 07:22:21 -0000 Delivered-To: apmail-karaf-user-archive@karaf.apache.org Received: (qmail 57508 invoked by uid 500); 10 Jan 2014 07:22:20 -0000 Mailing-List: contact user-help@karaf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@karaf.apache.org Delivered-To: mailing list user@karaf.apache.org Received: (qmail 57107 invoked by uid 99); 10 Jan 2014 07:22:20 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Jan 2014 07:22:20 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of krzys.sobkowiak@gmail.com designates 209.85.215.175 as permitted sender) Received: from [209.85.215.175] (HELO mail-ea0-f175.google.com) (209.85.215.175) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Jan 2014 07:22:13 +0000 Received: by mail-ea0-f175.google.com with SMTP id z10so1860569ead.20 for ; Thu, 09 Jan 2014 23:21:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type; bh=LbuXG31PGPrm2PNXzOyFeu4mIOK+uH1Ygh09csvrn/g=; b=pMiuJwsy9bITUBPNG+GAvJt7Um8IubBdpqO4nwglS9n3QYOckRhPV4C8KKEbMZ3Cub igNLGDITHT/71kWgy4khbSidyHyy5+H/jcjQRVTuMY6ju3o3q/fCh1TvJf/QIm9X0gHb Z9bi1ZyIEaqoic9sGwQqy1QbJfBKhurbx19gunuskENmrVSOAz56dO827wVv+chuEpNm eNcYLgF1ToxnQiQv8TMd2iElBYytsKI5QUl7v/sWN3xHbmUfswhVRfYJnNUqFEtjQcg2 PZeZRlUGdHrxswIIFeeZWJ/y471aCtmU8F/CAs3DwzLCJ1FQzR7pQB3MRYahfbfucvKl gcSQ== X-Received: by 10.15.91.3 with SMTP id r3mr7892407eez.18.1389338512859; Thu, 09 Jan 2014 23:21:52 -0800 (PST) Received: from [10.40.156.68] (gate.capgemini.de. [194.11.254.132]) by mx.google.com with ESMTPSA id a45sm12023387eem.6.2014.01.09.23.21.51 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 09 Jan 2014 23:21:51 -0800 (PST) Message-ID: <52CF9F8E.80101@gmail.com> Date: Fri, 10 Jan 2014 08:21:50 +0100 From: Krzysztof Sobkowiak User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: user@karaf.apache.org Subject: Re: Third-Party Licensing Policy References: <1388743490524-4030887.post@n3.nabble.com> <52C68EAC.9080400@nanthrax.net> <52C69642.3060903@nanthrax.net> <52CF2421.2040100@gmail.com> <52CF7A98.8010307@nanthrax.net> <52CF94F0.5070303@gmail.com> <52CF9BE3.2020302@nanthrax.net> In-Reply-To: <52CF9BE3.2020302@nanthrax.net> Content-Type: multipart/alternative; boundary="------------000905090705040606050405" X-Virus-Checked: Checked by ClamAV on apache.org This is a multi-part message in MIME format. --------------000905090705040606050405 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Ok thanks a lot, it clarified me my questions. The license content use juridical language. I don't understand it always. I could find camel-extra and servicemix-extra projects. But I can't find karaf-extra. Where is this project? Have you any plans to migrate the projects in git (or even host on Github)? Best regards Krzysztof On 10.01.2014 08:06, Jean-Baptiste Onofré wrote: > Hi Krzysztof, > > I invite you to read the GPL, APL, etc license content. > > My comments inline: > > On 01/10/2014 07:36 AM, Krzysztof Sobkowiak wrote: >> Hi >> >> Thanks for answers. I need still some clarifications. I'll use some >> samples >> >> On 10.01.2014 05:44, Jean-Baptiste Onofré wrote: >>> Hi >>> >>> It's a difference between inclusion, usage, and reference. >>> >>> For instance, GPL license is a intrusive license. It means that any >>> software that use a code under GPL has to be itself under the GPL >>> license. That's why you can't use GPL in a Apache project. It's the >>> case for usage, inclusion or reference. >>> LGPL is a bit permissive in the cave of reference. LGPL is a Category >>> X for inclusion and usage. It means that it's not possible to use LGPL >>> if the project embeds some jar under LGPL, or ship some code (like >>> copy/paste) under LGPL. However, if you just reference the project >>> without embedding it, and it's an user action to actually download and >>> add the LGPL jar, it's fine. >> I don't know if I have understood it correctly. I can reference >> Hibernate libraries in Karaf feature (e.g. because it is referenced by >> other library which is also included in Karaf feature ans uses the code >> from Hibernate or because we need Hibernate as JPA provider) . But I can >> not implement any sample with Karaf which shows, how to use Spring with >> plain Hibernate, because the Hibernate code (e.g. SessionFactory) would >> be referenced in this code. But I can implement such a sample outside >> Karaf (probably under another license, which? LGPL?) and eventually >> reference the sample somewhere in the Karaf feature like the Hibernate >> libraries? > > Correct. That's why we have karaf-extra (like camel-extra, > servicemix-extra) to store such code/sample outside Apache codebase. > >> >>> Regarding your question: >>> 1/ category A >>> 2/ category A >>> 3/ category A and B >>> 4/ category A and B (and we have to "publish" the changes) >> >> Does it mean I can copy some code (e.g. classes) from category B library >> into Apache licensed project, eventually change the code, and and ship >> it as part of this project (usage 3 and 4) but I can not reference the >> category B libraries as maven dependencies and use the classes from the >> dependencies in Apache licensed project (usage 1 and 2)? > > Not really, it depends in the license. Basically, all code in Apache > project should be under Apache license. Again, we can add it in > karaf-extra. > >> >> I use an example again - AspectJ is licensed under EPL 1.0 license. >> Assume I'd like to implement a WeavingHook using the AspectJ classes >> (reference AspectJ as maven dependency and use the classes in my code). >> Does it mean, my code can not be included in Apache licensed project, >> but I can implement the hook in a project under other license and >> eventually reference it in Karaf feature? > > Correct, you can't include in Apache project. You can create your > project outside of Apache project and reference it. Same as before: > you can do your WeavingHook in karaf-extra. > > Regards > JB > >> >> Best regards >> Krzysztof >> >>> 5/ all >>> 6/ category A and B >>> >>> Regards >>> JB >>> >>> On 01/09/2014 11:35 PM, Krzysztof Sobkowiak wrote: >>>> Hi >>>> >>>> I have some licensing questions. >>>> >>>> I have found following page http://www.apache.org/legal/3party.html >>>> which defines 3 categories of third party licenses. According to this >>>> page LGPL v2.1 is category X, but further remark says, the >>>> LGPL-v2.1-licensed work can be listed as system requirements but >>>> can not >>>> be included by Apache products. I'm not good in licensing but I >>>> try to >>>> understand it. Is the category of LGPL really B (and the page >>>> should be >>>> corrected) or is the LGP category X. In the second case, can we still >>>> list Hibernate in Karaf features (e.g. using the remark about >>>> listing of >>>> system requirements)? >>>> >>>> Assume following use cases of third-party work usage: >>>> 1. reference 3rd-party library as (maven) dependency and use the >>>> classes >>>> in ASF code >>>> 2. reference 3rd-party library as (maven) dependency and use the >>>> classes >>>> only in ASF configuration files (e.g. blueprint.xml) >>>> 3. include/copy some unmodified 3rd-party code (e.g. some classes) in >>>> ASF project >>>> 4. include/copy some 3rd-party code (e.g. some classes) in ASF project >>>> and modify it >>>> 5. list some 3rd-party libraries in Karaf features, but not include >>>> them >>>> as binaries in one of the Karaf distributions >>>> 6. list some 3rd-party libraries in Karaf features, and include >>>> them as >>>> binaries in one of the Karaf distributions in system repository >>>> >>>> Could anybody please answer which of above points are allowed for >>>> following 3rd-party works >>>> a. category A as the whole category - I assume, all above use cases >>>> are >>>> allowed in this category, is it ok? >>>> b. category B as the whole category >>>> c. category X as the whole category >>>> d. LGPL >>>> e. GPL >>>> f. EPL >>>> >>>> I have chosen Karaf as sample ASF project, but it could be any >>>> other ASF >>>> project, e.g. ServiceMix or Aries >>>> >>>> Do the rules from the page mentioned above apply only for ASF projects >>>> or for any project licensed under Apache License? >>>> >>>> Best regards >>>> Krzysztof >> >> >> -- >> Krzysztof Sobkowiak >> >> JEE & OSS Architect | Technical Architect @ Capgemini >> Capgemini | Software Solutions Center >> | Wroclaw >> e-mail: krzys.sobkowiak@gmail.com | >> Twitter: @KSobkowiak > -- Krzysztof Sobkowiak JEE & OSS Architect | Technical Architect @ Capgemini Capgemini | Software Solutions Center | Wroclaw e-mail: krzys.sobkowiak@gmail.com | Twitter: @KSobkowiak --------------000905090705040606050405 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit
Ok thanks a lot, it clarified me my questions. The license content use juridical language. I don't understand it always. I could find camel-extra and servicemix-extra projects. But I can't find karaf-extra. Where is this project? Have you any plans to migrate the projects in git (or even host on Github)?

Best regards
Krzysztof

On 10.01.2014 08:06, Jean-Baptiste Onofré wrote:
Hi Krzysztof,

I invite you to read the GPL, APL, etc license content.

My comments inline:

On 01/10/2014 07:36 AM, Krzysztof Sobkowiak wrote:
Hi

Thanks for answers. I need still some clarifications. I'll use some samples

On 10.01.2014 05:44, Jean-Baptiste Onofré wrote:
Hi

It's a difference between inclusion, usage, and reference.

For instance, GPL license is a intrusive license. It means that any
software that use a code under GPL has to be itself under the GPL
license. That's why you can't use GPL in a Apache project. It's the
case for usage, inclusion or reference.
LGPL is a bit permissive in the cave of reference. LGPL is a Category
X for inclusion and usage. It means that it's not possible to use LGPL
if the project embeds some jar under LGPL, or ship some code (like
copy/paste) under LGPL. However, if you just reference the project
without embedding it, and it's an user action to actually download and
add the LGPL jar, it's fine.
I don't know if I have understood it correctly. I can reference
Hibernate libraries in Karaf feature (e.g. because it is referenced by
other library which is also included in Karaf feature ans uses the code
from Hibernate or because we need Hibernate as JPA provider) . But I can
not implement any sample with Karaf which shows, how to use Spring with
plain Hibernate, because the Hibernate  code (e.g. SessionFactory) would
be referenced in this code. But I can implement such a sample outside
Karaf (probably under another license, which? LGPL?) and eventually
reference the sample somewhere in the Karaf feature like the Hibernate
libraries?

Correct. That's why we have karaf-extra (like camel-extra, servicemix-extra) to store such code/sample outside Apache codebase.


Regarding your question:
1/ category A
2/ category A
3/ category A and B
4/ category A and B (and we have to "publish" the changes)

Does it mean I can copy some code (e.g. classes) from category B library
into Apache licensed project, eventually change the code, and and ship
it as part of this project (usage 3 and 4) but I can not reference the
category B libraries as maven dependencies and use the classes from the
dependencies in Apache licensed project (usage 1 and 2)?

Not really, it depends in the license. Basically, all code in Apache project should be under Apache license. Again, we can add it in karaf-extra.


I use an example again  - AspectJ is licensed under EPL 1.0 license.
Assume I'd like to implement a WeavingHook using the AspectJ classes
(reference AspectJ as maven dependency and use the classes in my code).
Does it mean, my code can not be included in Apache licensed project,
but I can implement the hook in a project under other license and
eventually reference it in Karaf feature?

Correct, you can't include in Apache project. You can create your project outside of Apache project and reference it. Same as before: you can do your WeavingHook in karaf-extra.

Regards
JB


Best regards
Krzysztof

5/ all
6/ category A and B

Regards
JB

On 01/09/2014 11:35 PM, Krzysztof Sobkowiak wrote:
Hi

I have some licensing questions.

I have found following page http://www.apache.org/legal/3party.html
which defines 3 categories of third party licenses. According to this
page LGPL v2.1 is category X, but further remark says, the
LGPL-v2.1-licensed work can be listed as system requirements but can not
be included  by Apache products. I'm not good in licensing but I try to
understand it.  Is the category of LGPL really B (and the page should be
corrected) or is the LGP category X.  In the second case, can we still
list Hibernate in Karaf features (e.g. using the remark about listing of
system requirements)?

Assume following use cases of third-party work usage:
1. reference 3rd-party library as (maven) dependency and use the classes
in ASF code
2. reference 3rd-party library as (maven) dependency and use the classes
only in ASF configuration files (e.g. blueprint.xml)
3. include/copy some unmodified 3rd-party code (e.g. some classes) in
ASF project
4. include/copy some 3rd-party code (e.g. some classes) in ASF project
and modify it
5. list some 3rd-party libraries in Karaf features, but not include them
as binaries in one of the Karaf distributions
6. list some 3rd-party libraries in Karaf features, and  include them as
binaries in one of the Karaf distributions in system repository

Could anybody please answer which of above points are allowed for
following 3rd-party works
a. category A as the whole category - I assume, all above use cases are
allowed in this category, is it ok?
b. category B as the whole category
c. category X as the whole category
d. LGPL
e. GPL
f. EPL

I have chosen Karaf as sample ASF project, but it could be any other ASF
project, e.g. ServiceMix or Aries

Do the rules from the page mentioned above apply only for ASF projects
or for any project licensed under Apache License?

Best regards
Krzysztof


--
Krzysztof Sobkowiak

JEE & OSS Architect | Technical Architect @ Capgemini
Capgemini <http://www.pl.capgemini.com/> | Software Solutions Center
<http://www.pl.capgemini-sdm.com/> | Wroclaw
e-mail: krzys.sobkowiak@gmail.com <mailto:krzys.sobkowiak@gmail.com> |
Twitter: @KSobkowiak



--
Krzysztof Sobkowiak

JEE & OSS Architect | Technical Architect @ Capgemini
Capgemini | Software Solutions Center | Wroclaw
e-mail: krzys.sobkowiak@gmail.com | Twitter: @KSobkowiak
--------------000905090705040606050405--