This is an automated email from the ASF dual-hosted git repository.

pdallig pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/zeppelin.git


The following commit(s) were added to refs/heads/master by this push:
     new 6a4fcdc199 [ZEPPELIN-5833] Enable Cassandra for JDK11
6a4fcdc199 is described below

commit 6a4fcdc199971e9ecd2c5f795aeff66a020488bc
Author: Philipp Dallig <philipp.dal...@gmail.com>
AuthorDate: Thu Oct 6 16:13:36 2022 +0200

    [ZEPPELIN-5833] Enable Cassandra for JDK11
    
    ### What is this PR for?
    This PR updates scala for the cassandra interpreter to 2.12
    
    ### What type of PR is it?
    - Improvement
    
    ### Todos
    * [ ] - Verify with real Cassandra Backend
    
    ### What is the Jira issue?
    * https://issues.apache.org/jira/browse/ZEPPELIN-5833
    
    ### How should this be tested?
    * CI
    
    ### Questions:
    * Does the licenses files need to update? Yes
    * Is there breaking changes for older versions? Yes
    * Does this needs documentation? No
    
    Author: Philipp Dallig <philipp.dal...@gmail.com>
    
    Closes #4479 from Reamer/cassandra_jdk11 and squashes the following commits:
    
    4ba0dbc7e [Philipp Dallig] Enable Cassandra for JDK11
---
 cassandra/pom.xml                                  | 97 +++++++++++++---------
 .../zeppelin/cassandra/InterpreterLogic.scala      |  2 +-
 .../cassandra/CassandraInterpreterTest.java        | 26 +++---
 .../zeppelin/cassandra/InterpreterLogicTest.java   |  4 +-
 .../test/resources/scalate/DescribeKeyspaces.html  |  2 +-
 .../src/test/resources/scalate/DescribeTables.html |  2 +-
 .../zeppelin/cassandra/ParagraphParserTest.scala   |  2 +-
 pom.xml                                            |  8 ++
 zeppelin-distribution/src/bin_license/LICENSE      |  8 +-
 9 files changed, 84 insertions(+), 67 deletions(-)

diff --git a/cassandra/pom.xml b/cassandra/pom.xml
index da0c3ed5c5..04c87bdffe 100644
--- a/cassandra/pom.xml
+++ b/cassandra/pom.xml
@@ -31,14 +31,20 @@
     <description>Zeppelin cassandra support</description>
 
     <properties>
-        <cassandra.driver.version>4.8.0</cassandra.driver.version>
-        <snappy.version>1.1.7.3</snappy.version>
-        <lz4.version>1.7.0</lz4.version>
-        <scalate.version>1.7.1</scalate.version>
+        <cassandra.driver.version>4.14.1</cassandra.driver.version>
+        <snappy.version>1.1.8.4</snappy.version>
+        <lz4.version>1.8.0</lz4.version>
+        <scalate.version>1.9.8</scalate.version>
 
         <!-- test library versions -->
-        <jna.version>4.2.0</jna.version>
+        <jna.version>5.12.1</jna.version>
         <cassandra.unit.version>4.3.1.0</cassandra.unit.version>
+        <scalecheck.version>1.17.0</scalecheck.version>
+
+        <scala.version>${scala.2.12.version}</scala.version>
+        <scala.binary.version>2.12</scala.binary.version>
+        <scala.parser.combinators>1.1.2</scala.parser.combinators>
+        <cassandra.scalatest.version>3.2.0-SNAP10</cassandra.scalatest.version>
 
         <interpreter.name>cassandra</interpreter.name>
     </properties>
@@ -100,13 +106,6 @@
             <scope>runtime</scope>
         </dependency>
 
-        <!-- we'll switch back to it after removing support for Scala 2.10
-        <dependency>
-            <groupId>org.scala-lang.modules</groupId>
-            <artifactId>scala-java8-compat_${scala.binary.version}</artifactId>
-            <version>${scala.java8.compat.version}</version>
-        </dependency> -->
-
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-lang3</artifactId>
@@ -118,11 +117,24 @@
             <version>${scalate.version}</version>
         </dependency>
 
+        <dependency>
+            <groupId>org.scala-lang.modules</groupId>
+            
<artifactId>scala-parser-combinators_${scala.binary.version}</artifactId>
+            <version>${scala.parser.combinators}</version>
+        </dependency>
+
         <!-- test libraries -->
         <dependency>
             <groupId>org.scalatest</groupId>
             <artifactId>scalatest_${scala.binary.version}</artifactId>
-            <version>${scalatest.version}</version>
+            <version>${cassandra.scalatest.version}</version>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.scalacheck</groupId>
+            <artifactId>scalacheck_${scala.binary.version}</artifactId>
+            <version>${scalecheck.version}</version>
             <scope>test</scope>
         </dependency>
 
@@ -158,6 +170,7 @@
             <artifactId>assertj-core</artifactId>
             <scope>test</scope>
         </dependency>
+
     </dependencies>
 
     <build>
@@ -174,30 +187,50 @@
         <plugins>
             <!-- Plugin to compile Scala code -->
             <plugin>
-                <groupId>org.scala-tools</groupId>
-                <artifactId>maven-scala-plugin</artifactId>
+                <groupId>net.alchim31.maven</groupId>
+                <artifactId>scala-maven-plugin</artifactId>
                 <executions>
                     <execution>
-                        <id>compile</id>
+                        <id>eclipse-add-source</id>
                         <goals>
-                            <goal>compile</goal>
+                            <goal>add-source</goal>
                         </goals>
-                        <phase>compile</phase>
                     </execution>
                     <execution>
-                        <id>test-compile</id>
+                        <id>scala-compile-first</id>
+                        <phase>process-resources</phase>
                         <goals>
-                            <goal>testCompile</goal>
+                            <goal>compile</goal>
                         </goals>
-                        <phase>test-compile</phase>
                     </execution>
                     <execution>
-                        <phase>process-resources</phase>
+                        <id>scala-test-compile-first</id>
+                        <phase>process-test-resources</phase>
                         <goals>
-                            <goal>compile</goal>
+                            <goal>testCompile</goal>
                         </goals>
                     </execution>
                 </executions>
+                <configuration>
+                    <args>
+                        <arg>-unchecked</arg>
+                        <arg>-deprecation</arg>
+                        <arg>-feature</arg>
+                        <arg>-nobootcp</arg>
+                    </args>
+                    <jvmArgs>
+                        <jvmArg>-Xms1024m</jvmArg>
+                        <jvmArg>-Xmx1024m</jvmArg>
+                        <jvmArg>-XX:MaxMetaspaceSize=${MaxMetaspace}</jvmArg>
+                    </jvmArgs>
+                    <javacArgs>
+                        <javacArg>-source</javacArg>
+                        <javacArg>${java.version}</javacArg>
+                        <javacArg>-target</javacArg>
+                        <javacArg>${java.version}</javacArg>
+                        <javacArg>-Xlint:all,-serial,-path,-options</javacArg>
+                    </javacArgs>
+                </configuration>
             </plugin>
 
             <plugin>
@@ -213,24 +246,6 @@
                 </executions>
             </plugin>
 
-            <plugin>
-                <groupId>org.scalatra.scalate</groupId>
-                
<artifactId>maven-scalate-plugin_${scala.binary.version}</artifactId>
-                <executions>
-                    <execution>
-                        <id>compile</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>precompile</goal>
-                        </goals>
-                        <configuration>
-                            
<resourcesSourceDirectory>${basedir}/src/main/resources/scalate</resourcesSourceDirectory>
-                            
<contextClass>org.fusesource.scalate.DefaultRenderContext</contextClass>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-
             <plugin>
                 <artifactId>maven-enforcer-plugin</artifactId>
             </plugin>
diff --git 
a/cassandra/src/main/scala/org/apache/zeppelin/cassandra/InterpreterLogic.scala 
b/cassandra/src/main/scala/org/apache/zeppelin/cassandra/InterpreterLogic.scala
index 5529a71859..c3007f436f 100644
--- 
a/cassandra/src/main/scala/org/apache/zeppelin/cassandra/InterpreterLogic.scala
+++ 
b/cassandra/src/main/scala/org/apache/zeppelin/cassandra/InterpreterLogic.scala
@@ -380,7 +380,7 @@ class InterpreterLogic(val session: CqlSession, val 
properties: Properties)  {
         findInAngularRepository(variable) match {
           case Some(value) => statement.replaceAll(escapedExp,value.toString)
           case None =>
-            val value = context.getGui.input(variable, defaultVal)
+            val value = context.getGui.textbox(variable, defaultVal)
             statement.replaceAll(escapedExp, value.toString)
         }
 
diff --git 
a/cassandra/src/test/java/org/apache/zeppelin/cassandra/CassandraInterpreterTest.java
 
b/cassandra/src/test/java/org/apache/zeppelin/cassandra/CassandraInterpreterTest.java
index 5e4c994611..ccd70682f5 100644
--- 
a/cassandra/src/test/java/org/apache/zeppelin/cassandra/CassandraInterpreterTest.java
+++ 
b/cassandra/src/test/java/org/apache/zeppelin/cassandra/CassandraInterpreterTest.java
@@ -19,6 +19,8 @@ package org.apache.zeppelin.cassandra;
 import com.datastax.oss.driver.api.core.CqlSession;
 import com.datastax.oss.driver.api.core.config.DefaultDriverOption;
 import com.datastax.oss.driver.api.core.config.DriverExecutionProfile;
+
+import org.apache.commons.io.IOUtils;
 import org.apache.zeppelin.display.AngularObjectRegistry;
 import org.apache.zeppelin.display.GUI;
 import org.apache.zeppelin.interpreter.Interpreter;
@@ -33,10 +35,8 @@ import org.junit.BeforeClass;
 import org.junit.Ignore;
 import org.junit.Test;
 
-import java.io.BufferedReader;
 import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
+import java.nio.charset.StandardCharsets;
 import java.util.Map;
 import java.util.Properties;
 
@@ -264,7 +264,7 @@ public class CassandraInterpreterTest { //extends 
AbstractCassandraUnit4CQLTestC
             "The Way You Are\tTears for Fears\t1983\n" +
             "Primitive\tSoulfly\t2003\n");
   }
-    
+
   @Test
   public void should_throw_statement_not_having_semi_colon() {
     //Given
@@ -834,18 +834,12 @@ public class CassandraInterpreterTest { //extends 
AbstractCassandraUnit4CQLTestC
   }
 
   private static String readTestResource(String testResource) {
-    StringBuilder builder = new StringBuilder();
-    InputStream stream = 
testResource.getClass().getResourceAsStream(testResource);
-
-    try (BufferedReader br = new BufferedReader(new 
InputStreamReader(stream))) {
-      String line;
-      while ((line = br.readLine()) != null) {
-        builder.append(line).append("\n");
-      }
-    } catch (Exception ex) {
-      throw  new RuntimeException(ex);
+    try {
+      return IOUtils.toString(
+        CassandraInterpreterTest.class.getResourceAsStream(testResource),
+        StandardCharsets.UTF_8);
+    } catch (IOException ex) {
+      throw new RuntimeException(ex);
     }
-
-    return builder.toString();
   }
 }
diff --git 
a/cassandra/src/test/java/org/apache/zeppelin/cassandra/InterpreterLogicTest.java
 
b/cassandra/src/test/java/org/apache/zeppelin/cassandra/InterpreterLogicTest.java
index fda915d2c4..f0d8334db3 100644
--- 
a/cassandra/src/test/java/org/apache/zeppelin/cassandra/InterpreterLogicTest.java
+++ 
b/cassandra/src/test/java/org/apache/zeppelin/cassandra/InterpreterLogicTest.java
@@ -148,8 +148,8 @@ public class InterpreterLogicTest {
     //Given
     AngularObjectRegistry angularObjectRegistry = new 
AngularObjectRegistry("cassandra", null);
     
when(intrContext.getAngularObjectRegistry()).thenReturn(angularObjectRegistry);
-    when(intrContext.getGui().input("table", 
"zeppelin.demo")).thenReturn("zeppelin.demo");
-    when(intrContext.getGui().input("id", "'John'")).thenReturn("'John'");
+    when(intrContext.getGui().textbox("table", 
"zeppelin.demo")).thenReturn("zeppelin.demo");
+    when(intrContext.getGui().textbox("id", "'John'")).thenReturn("'John'");
 
     //When
     final String actual = helper.maybeExtractVariables(
diff --git a/cassandra/src/test/resources/scalate/DescribeKeyspaces.html 
b/cassandra/src/test/resources/scalate/DescribeKeyspaces.html
index ac48bd3411..f06b9406c3 100644
--- a/cassandra/src/test/resources/scalate/DescribeKeyspaces.html
+++ b/cassandra/src/test/resources/scalate/DescribeKeyspaces.html
@@ -1 +1 @@
-<br/><br/><nav class="navbar navbar-default"><ul class="nav navbar-nav"><li 
role="presentation" class="dropdown"><a class="dropdown-toggle" 
data-toggle="dropdown" role="button" aria-haspopup="true" 
aria-expanded="false"><span class="text-muted"><span class="glyphicon 
glyphicon-dashboard"></span>&nbsp;<strong>Test Cluster</strong></span><span 
class="text-muted caret"></span><ul class="dropdown-menu"><li 
class="dropdown-header"><span class="text-danger">Keyspaces</span></li><li><a 
role="bu [...]
\ No newline at end of file
+<br/><br/><nav class="navbar navbar-default"><ul class="nav navbar-nav"><li 
role="presentation" class="dropdown"><a class="dropdown-toggle" 
data-toggle="dropdown" role="button" aria-haspopup="true" 
aria-expanded="false"><span class="text-muted"><span class="glyphicon 
glyphicon-dashboard"></span>&nbsp;<strong>Test Cluster</strong></span><span 
class="text-muted caret"></span><ul class="dropdown-menu"><li 
class="dropdown-header"><span class="text-danger">Keyspaces</span></li><li><a 
role="bu [...]
\ No newline at end of file
diff --git a/cassandra/src/test/resources/scalate/DescribeTables.html 
b/cassandra/src/test/resources/scalate/DescribeTables.html
index 05992914d3..cba4b82536 100644
--- a/cassandra/src/test/resources/scalate/DescribeTables.html
+++ b/cassandra/src/test/resources/scalate/DescribeTables.html
@@ -1 +1 @@
-<br/><br/><nav class="navbar navbar-default"><ul class="nav navbar-nav"><li 
role="presentation" class="dropdown"><a class="dropdown-toggle" 
data-toggle="dropdown" role="button" aria-haspopup="true" 
aria-expanded="false"><span class="text-muted"><span class="glyphicon 
glyphicon-dashboard"></span>&nbsp;<strong>Test Cluster</strong></span><span 
class="text-muted caret"></span><ul class="dropdown-menu"><li 
class="dropdown-header"><span class="text-danger">Keyspaces</span></li><li><a 
role="bu [...]
\ No newline at end of file
+<br/><br/><nav class="navbar navbar-default"><ul class="nav navbar-nav"><li 
role="presentation" class="dropdown"><a class="dropdown-toggle" 
data-toggle="dropdown" role="button" aria-haspopup="true" 
aria-expanded="false"><span class="text-muted"><span class="glyphicon 
glyphicon-dashboard"></span>&nbsp;<strong>Test Cluster</strong></span><span 
class="text-muted caret"></span><ul class="dropdown-menu"><li 
class="dropdown-header"><span class="text-danger">Keyspaces</span></li><li><a 
role="bu [...]
\ No newline at end of file
diff --git 
a/cassandra/src/test/scala/org/apache/zeppelin/cassandra/ParagraphParserTest.scala
 
b/cassandra/src/test/scala/org/apache/zeppelin/cassandra/ParagraphParserTest.scala
index 19afafcbef..f5cb574f44 100644
--- 
a/cassandra/src/test/scala/org/apache/zeppelin/cassandra/ParagraphParserTest.scala
+++ 
b/cassandra/src/test/scala/org/apache/zeppelin/cassandra/ParagraphParserTest.scala
@@ -19,7 +19,7 @@ package org.apache.zeppelin.cassandra
 import com.datastax.oss.driver.api.core.{ConsistencyLevel, CqlSession}
 import com.datastax.oss.driver.api.core.cql.{BatchType, PreparedStatement}
 import org.apache.zeppelin.interpreter.InterpreterException
-import org.scalatest.mock.MockitoSugar
+import org.scalatest.mockito.MockitoSugar
 import org.scalatest.{BeforeAndAfterEach, FlatSpec, Matchers}
 import org.apache.zeppelin.cassandra.ParagraphParser._
 import org.apache.zeppelin.cassandra.TextBlockHierarchy._
diff --git a/pom.xml b/pom.xml
index 362714518d..7cd9562804 100644
--- a/pom.xml
+++ b/pom.xml
@@ -102,6 +102,7 @@
     <scala.version>${scala.2.10.version}</scala.version>
     <scala.binary.version>2.10</scala.binary.version>
     <scala.2.11.version>2.11.8</scala.2.11.version>
+    <scala.2.12.version>2.12.16</scala.2.12.version>
     <scalatest.version>3.0.7</scalatest.version>
     <scalacheck.version>1.12.5</scalacheck.version>
 
@@ -1853,6 +1854,13 @@
         <scala.binary.version>2.11</scala.binary.version>
       </properties>
     </profile>
+    <profile>
+      <id>scala-2.12</id>
+       <properties>
+        <scala.version>${scala.2.12.version}</scala.version>
+        <scala.binary.version>2.12</scala.binary.version>
+       </properties>
+    </profile>
 
     <profile>
       <id>web-angular</id>
diff --git a/zeppelin-distribution/src/bin_license/LICENSE 
b/zeppelin-distribution/src/bin_license/LICENSE
index 7f90d43bdd..c60e5130b3 100644
--- a/zeppelin-distribution/src/bin_license/LICENSE
+++ b/zeppelin-distribution/src/bin_license/LICENSE
@@ -62,9 +62,9 @@ The following components are provided under Apache License.
     (Apache 2.0) xml apis (xml-apis:xml-apis:jar:1.4.01 - 
http://xerces.apache.org/xml-commons/components/external)
     (Apache 2.0) java-xmlbuilder (com.jamesmurty.utils:java-xmlbuilder:jar:1.0 
- https://github.com/jmurty/java-xmlbuilder)
     (Apache 2.0) compress-lzf (com.ning:compress-lzf:jar:1.0.3 - 
https://github.com/ning/compress) Copyright 2009-2010 Ning, Inc.
-    (Apache 2.0) java-driver-core (com.datastax.oss:java-driver-core:jar:4.5.1 
- https://github.com/datastax/java-driver)
-    (Apache 2.0) Snappy-java (org.xerial.snappy:snappy-java:1.1.7.3 - 
https://github.com/xerial/snappy-java/)
-    (Apache 2.0) lz4-java (org.lz4:lz4-java:jar:1.6.0 - 
https://github.com/lz4/lz4-java)
+    (Apache 2.0) java-driver-core 
(com.datastax.oss:java-driver-core:jar:4.14.1 - 
https://github.com/datastax/java-driver)
+    (Apache 2.0) Snappy-java (org.xerial.snappy:snappy-java:1.1.8.4 - 
https://github.com/xerial/snappy-java/)
+    (Apache 2.0) lz4-java (org.lz4:lz4-java:jar:1.8.0 - 
https://github.com/lz4/lz4-java)
     (Apache 2.0) RoaringBitmap (org.roaringbitmap:RoaringBitmap:jar:0.5.11 - 
https://github.com/lemire/RoaringBitmap)
     (Apache 2.0) json4s (org.json4s:json4s-ast_2.10:jar:3.2.10 - 
https://github.com/json4s/json4s)
     (Apache 2.0) HPPC Collections (com.carrotsearch:hppc:0.7.1 - 
http://labs.carrotsearch.com/hppc.html/hppc)
@@ -211,7 +211,7 @@ The following components are provided under Apache License.
     (Apache 2.0) Maven Artifact Resolver Connector Basic 1.4.1 
(org.apache.maven.resolver:maven-resolver-connector-basic:1.4.1 - 
https://github.com/apache/maven-resolver)
     (Apache 2.0) Maven Artifact Resolver Transport File 1.4.1 
(org.apache.maven.resolver:maven-resolver-transport-file:1.4.1 - 
https://github.com/apache/maven-resolver)
     (Apache 2.0) Maven Artifact Resolver Transport HTTP 1.4.1 
(org.apache.maven.resolver:maven-resolver-transport-http:1.4.1 - 
https://github.com/apache/maven-resolver)
-    (Apache 2.0) Scalatest 2.2.4 (org.scalatest:scalatest_2.10:2.2.4 - 
https://github.com/scalatest/scalatest)
+    (Apache 2.0) Scalatest 3.2.0-SNAP10 
(org.scalatest:scalatest_2.12:3.2.0-SNAP10 - 
https://github.com/scalatest/scalatest)
     (Apache 2.0) frontend-maven-plugin 1.3 
(com.github.eirslett:frontend-maven-plugin:1.3 - 
https://github.com/eirslett/frontend-maven-plugin/blob/frontend-plugins-1.3/LICENSE
     (Apache 2.0) frontend-plugin-core 1.3 
(com.github.eirslett:frontend-plugin-core) - 
https://github.com/eirslett/frontend-maven-plugin/blob/frontend-plugins-1.3/LICENSE
     (Apache 2.0) mongo-java-driver 3.12.10 
(org.mongodb:mongo-java-driver:3.12.10) - 
https://github.com/mongodb/mongo-java-driver/blob/master/LICENSE.txt

Reply via email to