Hi,

I’m sorry for the late reply on the subject.

Generally, Apache-releases are source releases [3] and so adding a
precompiled jar without sources would prevent us from being able to
release AsterixDB. So we will have to find another solution.

A few options that I can think of right now would be to
1) make it an optional dependency and require the user to
require/obtain the jar external and to provide it to the platform that
they build on or to
2) include the source files in the AsterixDB source repository or to
3) download and build the source as part of the build process.

Of these 3 options, I think that 1) is the cleanest option from a
licensing perspective, 2) can be managed if we understand the
provenance of the source files and 3) seems problematic as we would put
a load on a system that provide the source for every build and as we
could retrieve use unvetted source code.

Thoughts/concerns about these options?
Does anybody see other options?

Cheers,
Till

[3] http://www.apache.org/legal/release-policy.html#artifacts

On 27 Jul 2017, at 7:21, Riyafa Abdul Hameed wrote:

Dear all,

Is there a way to ship a jar file as a dependency for AsterixDB apart from the method I have used here[1]. This is because the build of asterix-app
seems to fail[2] when I use the external jar file like this.
Though I am unable to find a connection between the failure and the
dependency it seems I need to assume that it is the cause, because
otherwise if I use the Maven-released version the build passes without
issue.

Any help would be highly appreciated.
[1]
https://asterix-gerrit.ics.uci.edu/#/c/1895/3/asterixdb/asterix-om/pom.xml
[2] https://asterix-gerrit.ics.uci.edu/#/c/1895

On 22 July 2017 at 01:59, Ahmed Eldawy <[email protected]> wrote:

Although Esri resolved the issue, their Maven-released version still relies on the incompatible library. We can wait until they release a new version on Maven but this might take a while. To be able to merge the current code, we might need to compile our own JAR file and ship it with the source code. Do you know if this is possible/allowed/recommended in AsterixDB? Is there another preferred way to handle this issue? Keep in mind that, most likely, the summer project will conclude before Esri releases the new version.

Thanks
Ahmed

On Tue, Jul 11, 2017 at 11:04 AM, Mike Carey <[email protected]> wrote:

NICE!!!



On 7/11/17 9:39 AM, Ahmed Eldawy wrote:

There's a good news. Riyafa has opened an issue on ESRI Geometry API project on Github about the license problem and they made the necessary
changes to remove the bad dependency.
https://github.com/Esri/geometry-api-java/issues/135
The changes are on their github repository but they are not released
yet.
I
think we can just continue what we're doing and wait for the new release
to
hit Maven repository.

Thanks
Ahmed

On Mon, Jun 26, 2017 at 7:55 AM, Mike Carey <[email protected]> wrote:

It sounds like the best option is 4 minus parsing, then, if we can do
that.  (Which would also address Wail's comments, which could be a
killer
for big data eventually.) If not, we could go with 2 for the summer
as a
first step, I guess? (But figuring out the feasibility of 4 would be
great...)

Cheers,

Mike



On 6/26/17 2:59 AM, Ahmed Eldawy wrote:

It seems that (3) would require modifying the open source Esri API
library
which I don't like. Not only for the overhead of understanding and modifying the code, but also for deviating from the standard library
which
means we will miss future updates. One of the reasons we chose to use
Esri
API is the hope that it will be well-maintained in the future.
This leaves us with (4). I don't know if it is technically possible to
depend on the standard Esri API without using the non-compliant
library
or
not. If this is possible, then we can just use the computational
geometry
(CG) functionality from the library, and provide our own GeoJSON
parser.
If
this is not possible, then I would rather consider the use of another
library, e.g., JTS.


Thanks
Ahmed

On Sun, Jun 25, 2017 at 11:47 AM, Wail Alkowaileet <
[email protected]>
wrote:

I can see from the code that there is a serder steps as such: Asterix

Object (binary) --> JSON (String) --> Esri geometry (Java object) -->
Esri
geometry (binary).
I think it would be nice if there is a binary-to-binary conversion
without
any deserialization (4th option).

On Sun, Jun 25, 2017 at 6:36 PM, Mike Carey <[email protected]>
wrote:

Agreed that 3 or 4 are what we'll need to do....!  (Sigh.)



On 6/25/17 5:57 AM, Till Westmann wrote:

Hi Riyafa,

I think that the problem is bigger than the failing test. The JSON
license itself is not acceptable for inclusion in an Apache
artifact
[4]. So we cannot use the ESRI API as-is, if we want the GeoJSON
functionality be a non-optional part of AsterixDB.

Here are a few options I see:
1) Make GeoJSON an optional part of AsterixDB (separate download
from a
     non-Apache location).
2) Make JSON.org a dependency that is not shipped (i.e. each user
would
have to download and install those jars separately - and get
error
     messages if the jars are not available).
3) Create a clone/copy of the ESRI API that uses another JSON
library.
4) Do all of the parsing independently from the ESRI API.

I’m not sure if 1) is a good option as the extensibility in this
part
of the code might not be sufficient to support this option easily.
2) is technically easier, but it involves an unpleasant user
experience.
Also, I think that both 1) and 2) are not desirable, as GeoJSON
should
be supported by vanilla AsterixDB.
For 3) and 4) we would need to look into the details to see how
much
work is required for each of those options and if there are other
legal
hurdles.

Are there other options?
Other thoughts/concerns?

Cheers,
Till

[4] https://www.apache.org/legal/resolved.html#category-x

On 25 Jun 2017, at 13:57, Riyafa Abdul Hameed wrote:

Dear all,

I implemented parse_geojon() function[1] using esri-geometry api[2]

which

is apache-2.0 licensed. But this api uses org.json as a dependency.

org.json is licensed under JSON which causes a license issue in the

code

I

have written[3]. What can I do about this issue?

[1] https://asterix-gerrit.ics.uci.edu/1838
[2]https://github.com/Esri/geometry-api-java
[3]
https://asterix-jenkins.ics.uci.edu/job/asterix-gerrit-integ
ration-tests/3290/

Thank you.
Yours sincerely,
Riyafa


--

*Regards,*
Wail Alkowaileet







--

Ahmed Eldawy
Assistant Professor
http://www.cs.ucr.edu/~eldawy
Tel: +1 (951) 827-5654




--
Riyafa Abdul Hameed
Undergraduate, University of Moratuwa

Email: [email protected]
Website: https://riyafa.wordpress.com/ <http://riyafa.wordpress.com/>
<http://facebook.com/riyafa.ahf>  <http://lk.linkedin.com/in/riyafa>
<http://twitter.com/Riyafa1>

Reply via email to