On Mon, Mar 5, 2012 at 3:09 PM, Mattmann, Chris A (388J)
<[email protected]> wrote:
> Hi Ryan,
>
> On Mar 5, 2012, at 2:57 PM, Ryan McKinley wrote:
>
>> On Mon, Mar 5, 2012 at 2:34 PM, Mattmann, Chris A (388J)
>> <[email protected]> wrote:
>>> Hey Ryan,
>>>
>>> On Mar 5, 2012, at 2:27 PM, Ryan McKinley wrote:
>>>
>>>>>
>>>>> Unfortunately I do see it as a roadblock. The goal of SIS was to write
>>>>> a pure ALv2 licensed (or compatible) spatial library and toolkit, which
>>>>> in my mind does *not* include any dependencies (even optional) on
>>>>> LGPL components.
>>>>>
>>>>
>>>> Got it, this was my understanding.  The goal of SIS is to build an ASL
>>>> version of JTS -- that's a great goal, just not one I have any
>>>> energy/time to contribute towards.
>>>
>>> No worries. I appreciate you reaching out. Is there a way to have everything
>>> in spatial4j that doesn't rely on the LGPL code here?
>>>
>>
>> possible, but it makes testing overly complicated.  I want/need the
>> JTS implementations to be 1st class test citizens.   (This is actually
>> the biggest reason this is not directly in the lucene)
>
> Gotcha.
>
>>
>>
>>>>
>>>>
>>>>> Is there any way that the works of spatial4j could be replaced by ALv2 
>>>>> code?
>>>>
>>>> The code in spatial4j is all ASL.  If there were a viable ASL polygon
>>>> library, we could use that too.
>>>
>>> How can you have an ALv2 licensed library that has dependencies on LGPL 
>>> upstream
>>> components? Doesn't the LGPL and its viral nature [1] spill into your code?
>>>
>>
>> You may be confusing LGPL with GPL.
>>
>> "Applications which link to LGPL libraries need not be released under the 
>> LGPL"
>> http://www.gnu.org/licenses/lgpl-java.html
>>
>> The key thing they want to make sure is that you don't bundle your own
>> version of the .jar file (section 6)
>
> Well that's the FSF's interpretation, and *not* Apache's. See this:
>
> (search for LGPL)
>
> http://www.apache.org/legal/resolved.html
>
> Which licenses may NOT be included within Apache products?
>
>        • Binary Code License (BCL)
>        • Special exceptions to the GNU GPL (e.g. GNU Classpath)
>        • GNU GPL 1, 2, 3
>        • GNU LGPL 2, 2.1, 3
>        • Affero GPL 3
>        • NPL 1.0/NPL 1.1
>        • QPL
>        • Sleepycat License
>        • Microsoft Limited Public License
>
> GNU LGPL
> The LGPL is ineligible primarily due to the restrictions it places on larger 
> works, violating the third license criterion. Therefore, LGPL-licensed works 
> must not be included in Apache products.
> Special exceptions to the GNU GPL
> Some copyright holders have licensed their works under the GPL with special 
> exceptions. Although these exceptions may appear to be addressing the 
> restrictions disallowed by the ASF's first and second license criteria, the 
> exceptions may only apply to software not "derived from or based on" the 
> covered work. This references terms defined in the GPL that include works 
> that "use" or "contain" the work.
>
> This is also the GPL and ALv2 compatible, just for reference:
>
> http://www.apache.org/licenses/GPL-compatibility.html
>
> You may find other interpretations in mailing lists, or from
> other folks, or via mail archives, but my preference would be
> taking the explicit understanding from the Legal resolved
> page above.
>
> Cheers,
> Chris
>

Cool -- I have no intention of debating this... or asking legal, or whatever.

It is very clear that you can not *distribute* lgpl files.  The
statement Greg pointed to earlier from the same page implies that you
can compile/test with LGPL dependencies:

Apache projects cannot distribute any such components. However, if the
component is only needed for optional features, a project can provide
the user with instructions on how to obtain and install the
non-included work. Optional means that the component is not required
for standard use of the product or for the product to achieve a
desirable level of quality. The question to ask yourself in this
situation is:

"Will the majority of users want to use my product without adding the
optional components?

- - - - - - -

That said, I totally respect the choice not to want an external JTS
compile/test dependency.

ryan

Reply via email to