I wanted to share a story of successful open source collaboration.

In the review of Baremaps dependencies [0], Martin Desruisseaux
pointed out that Baremaps depended on the Proj4J library [1], and that
it had some licensing issues. Specifically, Proj4J is licensed under
the Apache license, but it includes the EPSG data set [2] in the jar
file, and that data set has some terms of use. The user has to agree
to those terms of use, and that's tricky to achieve in a server or
library project. So there is doubt whether it can genuinely be
distributed under the Apache license.

In Calcite, we had recently added Proj4J as a dependency, and we
included it in our 1.32 release. We had exposed our users to legal
jeopardy, and needed to fix the problem urgently.

Bertil Chapuis took the initiative to remove Proj4J from Calcite [3]
(or more precisely, make it an optional dependency). Meanwhile I
logged an issue so that the Proj4J team was aware [4].

The Proj4J team fixed the issue by splitting the EPSG data set out of
the Proj4J library, so that Proj4J is now compliant with the Apache
license, and releasing version 1.2.0. Bertil will shortly reinstate
Proj4J as a Calcite dependency, upgrading to the new version.

I want to thank everyone involved: Martin, Bertil and Jim Hughes from
Apache, and everyone from the Proj4J team but especially Grigory
Pomadchin. Sorting out licensing issues is not exciting work but it is
crucial to maintain users' trust. Before this issue was solved, we
were considering removing functionality or using other libraries. With
this issue behind us, we can deliver the best possible geospatial
functionality to our users.

Julian

[0] https://lists.apache.org/thread/2g6j1jx7q5l1sx4mfp1w29obgnvrnvq5
[1] https://github.com/locationtech/proj4j
[2] https://en.wikipedia.org/wiki/EPSG_Geodetic_Parameter_Dataset
[3] https://issues.apache.org/jira/browse/CALCITE-5399
[4] https://github.com/locationtech/proj4j/issues/90
[5] https://issues.apache.org/jira/browse/CALCITE-5417

Reply via email to