This change introduces yet another new language - Kotlin script (.kts 
extension) - as well as gradle.

Vladimir made a case for adding Kotlin-based tests to Calcite a while ago. They 
have not been used or extended, afaict. 

The amount of knowledge required to maintain Avatica (and Calcite) is 
increasing, even as Avatica does basically the same thing it did two years ago.

Is this progress? I don’t think so. 

Julian


> On Jun 29, 2019, at 1:08 PM, Vladimir Sitnikov <sitnikov.vladi...@gmail.com> 
> wrote:
> 
> Hi,
> 
> I've started Maven -> Gradle for Avatica:
> https://github.com/apache/calcite-avatica/pull/104
> Feedback is very welcome.
> Note: the same is coming for Calcite, so you'd better try it sooner than
> later :)
> 
> Gradle project builds, loads into IDEA. It runs checkstyle/forbiddenapis.
> The build file automatically configures ASF copyright headers in IDEA.
> 
> 
> One of the issues is Avatica bundles third-party code in jar files. That
> requires to retain relevant license/notice files.
> 
> The approach with Maven was "hand-bake LICENSE file manually"
> The approach I suggest is discover licenses from jar and pom files.
> 
> Here are the relevant Gradle tasks (getLicenses and license):
> https://github.com/vlsi/calcite-avatica/blob/gradle/shaded/core/build.gradle.kts#L53-L68
> 
> Below you can find the result of those tasks.
> 
> I have a couple of questions:
> 1) Is everybody OK with that format?
> 2) I'm not sure where to include *bundled* LICENSE/NOTICE files.
> Any thoughts/opinions on how third-party license texts should be included
> into Avatica?
> 
> For instance, avatica-shaded.jar bundles slf4j-api, thus it must bundle its
> LICENSE file.
> Current Maven build just FAILS to include slf4j-api copyright header, thus
> it basically violates slf4j-api MIT license.
> 
> I see two options:
> 2.1) Put license files under
> META-INF/LICENSES/${group}_${artifact}_${version} folders
> 2.2) Concatenate all the license and NOTICE files into a single
> META-INF/LICENSE file.
> 
> ....
> Apache 2.0 license text
> ....
>   END OF TERMS AND CONDITIONS
> 
> - Software produced at the ASF which is available under AL 2.0 (as above)
> 
> Apache-2.0
> * commons-codec:commons-codec:1.10
> * commons-logging:commons-logging:1.2
> * org.apache.httpcomponents:httpclient:4.5.6
> * org.apache.httpcomponents:httpcore:4.4.10
> 
> - Software produced outside the ASF which is available under AL 2.0 (as
> above)
> 
> Apache-2.0
> * com.fasterxml.jackson.core:jackson-annotations:2.9.8
> * com.fasterxml.jackson.core:jackson-core:2.9.8
> * com.fasterxml.jackson.core:jackson-databind:2.9.8
> 
> - Software produced outside the ASF which is available under other licenses
> (not AL 2.0)
> 
> BSD-3-Clause
> * com.google.protobuf:protobuf-java:3.6.1
> 
> MIT
> * org.slf4j:slf4j-api:1.7.25
> 
> 
> Vladimir

Reply via email to