If this is true, then how can Spring Data Neo4j be published under an
Apache License, whereas Neo4j is published under GPL?
If this is false, does that mean I can write a software component using
Neo4j and publish it under an Apache License?
Best regards,
Harald
the ASLv2 is compatible with the GPL in that the ASL is only about
attribution, and not forbidding the whole work to be GPLed (if the GPL
is kicking in).
For distribution, I think the system in question is not Spring, but
the system you build with SDN, so that the SDN distribution as a
toolbox is not a problem.
Cheers,
/peter neubauer
Google: neubauer.peter
Skype: peter.neubauer
Phone: +46 704 106975
LinkedIn: http://www.linkedin.com/in/neubauer
Twitter: @peterneubauer
Tungle: tungle.me/peterneubauer
brew install neo4j && neo4j start
heroku addons:add neo4j
Hmm, I wasn't really thinking about a server. Suppose I'd start some
project like a routing engine based on an embedded Neo4j Community
database. That project of mine would have a compile and runtime
dependency on GPLed Neo4j.
I'd like to publish my project under an Apache License. The question is
whether or not I'd violate Neo4j's licensing terms by doing so.
>
> the ASLv2 is compatible with the GPL in that the ASL is only about
> attribution, and not forbidding the whole work to be GPLed (if the GPL
> is kicking in).
Yes, but that's the opposite question. You can add some stuff of your
own to an ASL component and publish the whole lot under GPL, but I'd
like use a GPL component in some stuff of mine and publish the whole lot
under ASL.
>
> For distribution, I think the system in question is not Spring, but
> the system you build with SDN, so that the SDN distribution as a
> toolbox is not a problem.
>
SDN = spring-data-neo4j? I have no intention of using it, I just noticed
that they published their project under ASL, like all the rest of
Spring, so my line of thought was, if they can do it, why can't I.
Unless there is a special licensing agreement between Neo4j and Spring
allowing just that for this special case...
Cheers,
Harald
Am 17.01.2012 21:55, schrieb Peter Neubauer:Hmm, I wasn't really thinking about a server. Suppose I'd start some project like a routing engine based on an embedded Neo4j Community database. That project of mine would have a compile and runtime dependency on GPLed Neo4j.
Harald,
IANAL, but my understanding is that you use Neo4j Community as you
would MySQL. That is, Neo4j is only viral when you redistribute the
software, not if you build a server.
I'd like to publish my project under an Apache License. The question is whether or not I'd violate Neo4j's licensing terms by doing so.
SDN = spring-data-neo4j? I have no intention of using it, I just noticed that they published their project under ASL, like all the rest of Spring, so my line of thought was, if they can do it, why can't I.
Unless there is a special licensing agreement between Neo4j and Spring allowing just that for this special case...
Thanks Emil, that explains it. I would have bet from past experience
that GPLv2 and ASL 2.0 are not compatible, but I wasn't aware of the
changes in GPLv3 that now make them compatible.
http://www.gnu.org/licenses/license-list.en.html
Good to know :-)
Best regards,
Harald
The usage of "compatibility" in the FSF documents is rather misleading.
In plain English, I take "compatibility" to be a symmetric relation, and
[1] seems to support this view at first sight.
However, [2] is clearly asymmetric. "ASL is compatible with GPLv3" means
you can combine ASL and GPLv3 components in a larger work - but ONLY IF
you license the larger work under GPL.
Peter said earlier in this thread you can "use Neo4j Community as you
would MySQL".
I don't think this is true, at least there is a substantial difference
in the licenses.
The MySQL JDBC driver is licensed under GPLv2 but with a FOSS exception
[4], which states explicitly that you may use the GPLed library in a
larger work licensed under one of the listed FOSS licenses (including ASL).
If this were permitted by default, the exception would not be necessary.
So IMHO all of this implies that I cannot use Neo4J Community (or any
other GPLv3 library) in a work of my own and distribute the combined
work (including the GPLv3 libs) under ASL.
A weaker variant of this: My component uses Neo4J APIs, I distribute my
component (source and binaries) under ASL, NOT including the Neo4j libs.
(This is what SpringSource does with spring-data-neo4j (SDN).) To run my
component, users need to obtain Neo4j on their own.
This use case is permitted by section 4 (Combined Works) of the LGPLv3.
It is not mentioned very clearly in the GPLv3, and my interpretation is
that it is NOT PERMITTED, otherwise there would be no point in creating
LGPLv3 as a weaker variant of GPLv3 specifically permitting this case.
Therefore, I believe that SDN violates the GPLv3 license of Neo4j.
Now I don't really care about potential legal problems of other parties,
but I do care about my own work.
I do have some unpublished source code which uses Neo4j and which I'd
like to publish. It is my own policy and the policy of OSS communities I
normally work with to publish source code (and binaries) under ASL.
So it seems there are only two options: Publish my code under GPLv3
(outside of an ASL-bound community), or keep it private.
As things stand, I think I'll publish the work I've done so far under
GPL, against my own preference, and then stop using Neo4j in OSS
contexts because its copyleft restricts my freedom.
If Neo Technology wants to promote the use of Neo4j in OSS projects and
to remove all legal uncertainty, then I think the minimum you should do
is adding an OSS exception to the Neo4j Community license, but LGPLv3 or
ASLv2 would really be the preferred solution from that perspective.
[1] http://www.gnu.org/licenses/gpl-faq.html#WhatDoesCompatMean
[2] http://www.gnu.org/licenses/gpl-faq.html#FSWithNFLibs
[3] http://www.gnu.org/licenses/quick-guide-gplv3.en.html, New
Compatible Licenses
[4] http://www.mysql.com/about/legal/licensing/foss-exception/
Best regards,
Harald
Harald,
Thanks for the research! Will bring it up with Emil etc and get back. We don't want you to be hampered by the community license in your oss work.
Send from a device with crappy keyboard and autocorrection.
/peter
Harald,
Thanks for the research! Will bring it up with Emil etc and get back. We don't want you to be hampered by the community license in your oss work.Send from a device with crappy keyboard and autocorrection.
/peter
--
You received this message because you are subscribed to the Google Groups "Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email to neo4j+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/neo4j/e6f23a10-7476-4e06-92d4-57dcf2ae6701%40googlegroups.com.