Hi Dave,
Good question. Currently, there are no plans for GeoMesa to be free of
GeoTools. At the minute, GeoTools and GeoServer are two of the best
projects for handling geospatial processing and serving up the results
via OGC access patterns. It is inconvenient that their licenses aren't
more business friendly. I'd point out that several of these projects
were in existence before ASF license version 1.1.;)
In terms of integrations of GeoMesa and Apache projects, in many cases
(such as Storm or Kafka), I think it might make more sense for GeoMesa
to depend on the Apache project or for there to be a third-party project
which depends on both (for example with NiFi). Overall, I'd love to see
better licensing so that dependencies can go either direction. I spend
more time than I care to dealing with legal details like this...
For other LocationTech projects, I'd point out that only a few use
GeoTools. For instance, Spatial4J is used by Apache Lucene. Overall,
the Eclipse Foundation (and LocationTech by extension) hosts projects
which have business-friendly licenses.
Anyhow, I hope that helps clarify things a bit.
Cheers,
Jim
On 09/14/2016 02:29 PM, David Lotts wrote:
Oops, this thread was supposed to be subject RYA-177
RYA-179 is corrections to Rya source file license headers.
Jim, do you know when GeoMesa plans to be completely free of GeoTools ?
Clearly Geotools is an obstacle for Apache projects to use LocationTech
projects, or at least GeoMesa.
Or is there another path forward for GeoMesa?
On Wed, Sep 14, 2016 at 1:48 PM, Aaron D. Mihalik <aaron.miha...@gmail.com>
wrote:
Could we revive the indexer profile again?
(tl;dr: Yes. Mentors: Please correct us if we're wrong)
This might be a solution. I found a couple similar cases with Apache
projects and discussions related to those cases.
Apache Flink integrated with Amazon Kinesis [1] and [2]. Note that Kinesis
is an optional profile, and it's well documented in the POM why it's
optional.
(Note that NiFi got around this by using Amazon's SDK for Java [3], which
is purely Apache 2.0)
Spark uses optional profiles to build artifacts based on LGPL
dependencies. Spark has to built by the user to use netlib [4][5], Ganglia
[6], or Kinesis [6].
I think a profile will work, but I'd like to see it well documented (both
in the POM and manual) so that we never accidentally create a release with
these artifacts.
I was going to open a separate ticket to implement this, but I think it's
good to track all of this effort under RYA-177.
--Aaron
[1]
https://github.com/apache/flink/blob/release-1.1.2/
flink-streaming-connectors/pom.xml#L69
[2]
https://github.com/apache/flink/blob/release-1.1.2/
flink-streaming-connectors/flink-connector-kinesis/pom.xml#L73
[3] https://github.com/apache/nifi/blob/master/pom.xml#L1316
[4] https://github.com/apache/spark/blob/v2.0.0/mllib/pom.xml#L120
[5]
https://github.com/apache/spark/blob/v2.0.0/docs/ml-guide.md#dependencies
[6] https://github.com/apache/spark/blob/v2.0.0/pom.xml#L2414
[7] https://issues.apache.org/jira/browse/LEGAL-198
[8] https://www.gnu.org/licenses/lgpl-java.html
On Wed, Sep 14, 2016 at 12:09 PM David Lotts <dlo...@gmail.com> wrote:
Great find Aaron!
The ESRI library is quite comparable!
Rya via Geomesa are using *JTS Topology Suite (*JTS): (the javadocs at
vividsolutions seems to be 404 )
http://tsusiatsoftware.net/jts/javadoc/com/vividsolutions/jts/geom/
Geometry.html
Far from a drop-in replacement, but a path forward:
http://esri.github.io/geometry-api-java/javadoc/
Interesting, ESRI has Shape file support, but no GML, the opposite of
JTS!
david.
On Wed, Sep 14, 2016 at 10:29 AM, Aaron D. Mihalik <
aaron.miha...@gmail.com>
wrote:
Yeah, that sounds possible. I don't like the idea of having to maintain
another build/ci/release process, though.
More importantly, we'd also have to modify our GeoIndexer interface [1]
to
something Apache Friendly. It looks like Ersi puts out an Apache 2.0
library [2].
[1]
https://github.com/apache/incubator-rya/blob/master/
extras/indexing/src/main/java/mvm/rya/indexing/GeoIndexer.java
[2] https://github.com/Esri/geometry-api-java
On Tue, Sep 13, 2016 at 10:36 PM Jim Hughes <jn...@ccri.com> wrote:
Hi Aaron,
Thanks, wasn't finding that list quickly...
It sounds like the GeoMesa/GeoTools usage might fall under this Q/A:
http://www.apache.org/legal/resolved.html#optional.
Thoughts?
Jim
On 9/13/2016 9:25 PM, Aaron D. Mihalik wrote:
Jim,
We've been working off of these lists:
http://www.apache.org/legal/resolved.html#category-a
On Tue, Sep 13, 2016 at 6:07 PM Jim Hughes <jn...@ccri.com> wrote:
Hi David,
A number of the geo-dependencies are likely from the geo-indexing
(which
uses GeoMesa (Apache 2.0) which uses GeoTools and JTS).
Are there options to make the geoindexing a profile, provide the
source,
and not provide artifacts for that code at Apache?
Also, is there a list of approved licenses for Apache projects
dependencies?
Cheers,
Jim
On 09/13/2016 05:46 PM, David Lotts wrote:
This issue is a release blocker:
<https://issues.apache.org/jira/browse/RYA-179>
RYA-179 <https://issues.apache.org/jira/browse/RYA-179> Review
License /
Copyright notices on Rya Artifacts
I was able to create a 3rd party dependency license report for
Rya
from the license
maven plugin.
<http://www.mojohaus.org/license-maven-plugin/>
Good: I can send the full list if you like. Mostly ASL and
clearly
permitted.
Okay: A number of CDDL and CPL licenses -- permitted if no source
code
is
included.
Needs Improvement: The following are not clearly permitted
licenses:
(cern.colt MIT license see
https://dst.lbl.gov/ACSSoftware/colt/license.html) colt
(colt:colt:1.2.0 -
no url defined)
-- this is a mistake, should be java.util.Arrays, not
cern.colt.Arrays -- creating an issue to eliminate dependency.
(GNU LESSER GENERAL PUBLIC LICENSE) JCalendar
(com.toedter:jcalendar:1.1.4 -
http://www.toedter.com/en/jcalendar/)
(Lesser General Public License (LGPL)) JTS Topology Suite
(com.vividsolutions:jts:1.13 -
http://sourceforge.net/projects/jts-topo-suite)
(Lesser General Public License (LGPL)) Image
I/O-Extensions
-
GeoCore
(it.geosolutions.imageio-ext:imageio-ext-geocore:1.1.13 - no url
defined)
(Lesser General Public License (LGPL)) Image
I/O-Extensions
-
Custom
Streams (it.geosolutions.imageio-ext:imageio-ext-streams:1.1.13
-
no
url
defined)
(Lesser General Public License (LGPL)) Improved TIFF
Plugin
(it.geosolutions.imageio-ext:imageio-ext-tiff:1.1.13 - no url
defined)
(Lesser General Public License (LGPL)) Image
I/O-Extensions
-
utilities classes and methods
(it.geosolutions.imageio-ext:imageio-ext-utilities:1.1.13 - no
url
defined)
(Unknown license) jai_codec (javax.media:jai_codec:1.1.3 -
no
url
defined)
(Unknown license) jai_core (javax.media:jai_core:1.1.3 -
no
url
defined)
(Unknown license) jai_imageio
(javax.media:jai_imageio:1.1 -
no
url
defined)
(Unknown license) jgridshift (jgridshift:jgridshift:1.0 -
no
url
defined)
(GNU Lesser General Public License) Remote Tea Runtime
(org.acplt:oncrpc:1.0.7 - http://remotetea.sourceforge.net/)
(Unknown license) Antlr 3.4 Runtime
(org.antlr:antlr-runtime:3.4 -
http://www.antlr.org)
(Unknown license) Jettison (org.codehaus.jettison:
jettison:1.1
- no
url defined)
(Lesser General Public License (LGPL)) API interfaces
(org.geotools:gt-api:14.3 - no url defined)
(Lesser General Public License (LGPL)) Grid Coverage
module
(org.geotools:gt-coverage:14.3 - no url defined)
(Lesser General Public License (LGPL)) OGC CQL to Filter
parser
(org.geotools:gt-cql:14.1 - no url defined)
(Lesser General Public License (LGPL)) DataStore Support
(org.geotools:gt-data:14.1 - no url defined)
(Lesser General Public License (LGPL)) Feature Based
Graphs
and
Networks (org.geotools:gt-graph:14.3 - no url defined)
(Lesser General Public License (LGPL)) Vector grids
(org.geotools:gt-grid:14.1 - no url defined)
(Lesser General Public License (LGPL)) Main module
(org.geotools:gt-main:14.1 - no url defined)
(Lesser General Public License (LGPL)) Metadata
(org.geotools:gt-metadata:14.1 - no url defined)
(Lesser General Public License (LGPL)) (OGC copyright)
Open
GIS
Interfaces (org.geotools:gt-opengis:14.1 - no url defined)
(Lesser General Public License (LGPL)) Process
(org.geotools:gt-process:14.1 - no url defined)
(Lesser General Public License (LGPL)) Process Feature
(org.geotools:gt-process-feature:14.1 - no url defined)
(Lesser General Public License (LGPL)) Referencing
services
(org.geotools:gt-referencing:14.3 - no url defined)
(Lesser General Public License (LGPL)) Render
(org.geotools:gt-render:14.1 - no url defined)
(Lesser General Public License (LGPL)) Shapefile module
(org.geotools:gt-shapefile:14.1 - no url defined)
(Lesser General Public License (LGPL)) Feature
transforming
feature
source wrapper (org.geotools:gt-transform:14.1 - no url defined)
(Lesser General Public License (LGPL)) XML Parsing
(org.geotools.xsd:gt-xsd-core:14.3 - no url defined)
(Lesser General Public License (LGPL)) GML2 XML Support
(org.geotools.xsd:gt-xsd-gml2:14.3 - no url defined)
(Lesser General Public License (LGPL)) GML3 XML Support
(org.geotools.xsd:gt-xsd-gml3:14.3 - no url defined)
david.