incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marko Rodriguez <>
Subject Helping Neo4j Release an Apache2 API for Apache Projects
Date Tue, 28 Apr 2015 15:33:39 GMT

TinkerPop (, prior to being an Apache project, provided
a tinkerpop-neo4j adaptor with each release. TinkerPop sees Neo4j as the "reference OLTP implementation"
of TinkerPop. With TinkerPop's migration to the Apache Software Foundation, TinkerPop 3.0.0.M8-incubating
(just released) had to gut Neo4j because Neo4j is licensed GPL/AGPL.

Neo4j wants to continue to be TinkerPop's reference implementation. As such, Neo4j is interested
in providing an Apache2 licensed version of their neo4j-api <dependency/>. They want
to do this not only for TinkerPop, but also for other Apache projects that want to depend
on Neo4j (or have in the past and gutted it for licensing reasons -- e.g. Apache Camel). However,
before they go down this road of altering their product modules and licenses, they want to
make sure their proposed module will be accepted as something that Apache projects can legally
<depend/> on.

If anyone is an expert in the area of licensing (or has past experience with a similar situation),
can you please review the following proposal.

* Neo4j would re-license their "neo4j-api" module as Apache2.
	* This dependency would NOT depend on anything GPL/AGPL.
* Neo4j would then have their neo4j-kernal module <depend/> on the Apache2 neo4j-api
	* Thus, no transitive dependency and therefore, no viral GPL/APGL.
* TinkerPop (or any Apache2 projects) would then ONLY depend on neo4j-api.
	* For testing, TinkerPop's pom.xml would have some sort of <config/> stating where
Neo4j is.
	* Thus, the tester would be responsible for manually downloading Neo4j.
	* Some reflection based model would be used to instantiate the connection (or some META-INF/services-style
* TinkerPop users would also, like testers, be responsible for manually downloading Neo4j.

In short, TinkerPop would depend on an Apache2 licensed neo4j-api. Some manual downloads from
testers/users would be required to use the tinkerpop-neo4j component with a Neo4j database.

Is this a correct way forward for Neo4j?

Thank you very much for your time,

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message