/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ ext { versions = [:] libs = [:] // Enabled by default when commands like `testAll` are invoked defaultScalaVersions = [ '2.11', '2.12', '2.13' ] // Available if -PscalaVersion is used. This is useful when we want to support a Scala version that has // a higher minimum Java requirement than Kafka. This was previously the case for Scala 2.12 and Java 7. availableScalaVersions = [ '2.11', '2.12', '2.13' ] } // Add Scala version def defaultScala211Version = '2.11.12' def defaultScala212Version = '2.12.8' def defaultScala213Version = '2.13.0' if (hasProperty('scalaVersion')) { if (scalaVersion == '2.11') { versions["scala"] = defaultScala211Version } else if (scalaVersion == '2.12') { versions["scala"] = defaultScala212Version } else if (scalaVersion == '2.13') { versions["scala"] = defaultScala213Version } else { versions["scala"] = scalaVersion } } else { versions["scala"] = defaultScala212Version } /* Resolve base Scala version according to these patterns: 1. generally available Scala versions (such as: 2.11.x, 2.12.y and 2.13.z) corresponding base versions will be: 2.11, 2.12 and 2.13 (respectively) 2. pre-release Scala versions (i.e. milestone/rc, such as: 2.13.0-M5, 2.13.0-RC1, 2.14.0-M1, etc.) will have identical base versions; rationale: pre-release Scala versions are not binary compatible with each other and that's the reason why libraries include the full Scala release string in their name for pre-releases (see dependencies below with an artifact name suffix '_$versions.baseScala') */ if ( !versions.scala.contains('-') ) { versions["baseScala"] = versions.scala.substring(0, versions.scala.lastIndexOf(".")) } else { versions["baseScala"] = versions.scala } versions += [ activation: "1.1.1", apacheda: "1.0.2", apacheds: "2.0.0-M24", argparse4j: "0.7.0", bcpkix: "1.61", checkstyle: "8.20", gradle: "5.4.1", gradleVersionsPlugin: "0.21.0", grgit: "3.1.1", httpclient: "4.5.8", easymock: "4.0.2", jackson: "2.9.9", jacoco: "0.8.3", jetty: "9.4.18.v20190429", jersey: "2.28", jmh: "1.21", hamcrest: "2.1", log4j: "1.2.17", scalaLogging: "3.9.2", jaxb: "2.3.0", jaxrs: "2.1.1", jfreechart: "1.0.0", jopt: "5.0.4", junit: "4.13-beta-2", kafka_0100: "0.10.0.1", kafka_0101: "0.10.1.1", kafka_0102: "0.10.2.2", kafka_0110: "0.11.0.3", kafka_10: "1.0.2", kafka_11: "1.1.1", kafka_20: "2.0.1", kafka_21: "2.1.1", kafka_22: "2.2.0", lz4: "1.6.0", mavenArtifact: "3.6.1", metrics: "2.2.0", mockito: "2.27.0", owaspDepCheckPlugin: "4.0.2", powermock: "2.0.2", reflections: "0.9.11", rocksDB: "5.18.3", scalafmt: "1.5.1", scalatest: "3.0.8", scalaJava8Compat : "0.9.0", scoverage: "1.4.0", scoveragePlugin: "2.5.0", shadowPlugin: "4.0.4", slf4j: "1.7.26", snappy: "1.1.7.3", spotbugs: "3.1.12", spotbugsPlugin: "1.6.9", spotlessPlugin: "3.23.0", zkclient: "0.11", zookeeper: "3.4.14", zstd: "1.4.0-1" ] libs += [ activation: "javax.activation:activation:$versions.activation", apacheda: "org.apache.directory.api:api-all:$versions.apacheda", apachedsCoreApi: "org.apache.directory.server:apacheds-core-api:$versions.apacheds", apachedsInterceptorKerberos: "org.apache.directory.server:apacheds-interceptor-kerberos:$versions.apacheds", apachedsProtocolShared: "org.apache.directory.server:apacheds-protocol-shared:$versions.apacheds", apachedsProtocolKerberos: "org.apache.directory.server:apacheds-protocol-kerberos:$versions.apacheds", apachedsProtocolLdap: "org.apache.directory.server:apacheds-protocol-ldap:$versions.apacheds", apachedsLdifPartition: "org.apache.directory.server:apacheds-ldif-partition:$versions.apacheds", apachedsMavibotPartition: "org.apache.directory.server:apacheds-mavibot-partition:$versions.apacheds", apachedsJdbmPartition: "org.apache.directory.server:apacheds-jdbm-partition:$versions.apacheds", argparse4j: "net.sourceforge.argparse4j:argparse4j:$versions.argparse4j", bcpkix: "org.bouncycastle:bcpkix-jdk15on:$versions.bcpkix", easymock: "org.easymock:easymock:$versions.easymock", jacksonDatabind: "com.fasterxml.jackson.core:jackson-databind:$versions.jackson", jacksonDataformatCsv: "com.fasterxml.jackson.dataformat:jackson-dataformat-csv:$versions.jackson", jacksonModuleScala: "com.fasterxml.jackson.module:jackson-module-scala_$versions.baseScala:$versions.jackson", jacksonJDK8Datatypes: "com.fasterxml.jackson.datatype:jackson-datatype-jdk8:$versions.jackson", jacksonJaxrsJsonProvider: "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:$versions.jackson", jaxbApi: "javax.xml.bind:jaxb-api:$versions.jaxb", jaxrsApi: "javax.ws.rs:javax.ws.rs-api:$versions.jaxrs", jettyServer: "org.eclipse.jetty:jetty-server:$versions.jetty", jettyClient: "org.eclipse.jetty:jetty-client:$versions.jetty", jettyServlet: "org.eclipse.jetty:jetty-servlet:$versions.jetty", jettyServlets: "org.eclipse.jetty:jetty-servlets:$versions.jetty", jerseyContainerServlet: "org.glassfish.jersey.containers:jersey-container-servlet:$versions.jersey", jerseyHk2: "org.glassfish.jersey.inject:jersey-hk2:$versions.jersey", jmhCore: "org.openjdk.jmh:jmh-core:$versions.jmh", jmhCoreBenchmarks: "org.openjdk.jmh:jmh-core-benchmarks:$versions.jmh", jmhGeneratorAnnProcess: "org.openjdk.jmh:jmh-generator-annprocess:$versions.jmh", joptSimple: "net.sf.jopt-simple:jopt-simple:$versions.jopt", junit: "junit:junit:$versions.junit", hamcrest: "org.hamcrest:hamcrest:$versions.hamcrest", kafkaStreams_0100: "org.apache.kafka:kafka-streams:$versions.kafka_0100", kafkaStreams_0101: "org.apache.kafka:kafka-streams:$versions.kafka_0101", kafkaStreams_0102: "org.apache.kafka:kafka-streams:$versions.kafka_0102", kafkaStreams_0110: "org.apache.kafka:kafka-streams:$versions.kafka_0110", kafkaStreams_10: "org.apache.kafka:kafka-streams:$versions.kafka_10", kafkaStreams_11: "org.apache.kafka:kafka-streams:$versions.kafka_11", kafkaStreams_20: "org.apache.kafka:kafka-streams:$versions.kafka_20", kafkaStreams_21: "org.apache.kafka:kafka-streams:$versions.kafka_21", kafkaStreams_22: "org.apache.kafka:kafka-streams:$versions.kafka_22", log4j: "log4j:log4j:$versions.log4j", lz4: "org.lz4:lz4-java:$versions.lz4", metrics: "com.yammer.metrics:metrics-core:$versions.metrics", mockitoCore: "org.mockito:mockito-core:$versions.mockito", powermockJunit4: "org.powermock:powermock-module-junit4:$versions.powermock", powermockEasymock: "org.powermock:powermock-api-easymock:$versions.powermock", reflections: "org.reflections:reflections:$versions.reflections", rocksDBJni: "org.rocksdb:rocksdbjni:$versions.rocksDB", scalaLibrary: "org.scala-lang:scala-library:$versions.scala", scalaLogging: "com.typesafe.scala-logging:scala-logging_$versions.baseScala:$versions.scalaLogging", scalaReflect: "org.scala-lang:scala-reflect:$versions.scala", scalatest: "org.scalatest:scalatest_$versions.baseScala:$versions.scalatest", scalaJava8Compat: "org.scala-lang.modules:scala-java8-compat_$versions.baseScala:$versions.scalaJava8Compat", scoveragePlugin: "org.scoverage:scalac-scoverage-plugin_$versions.baseScala:$versions.scoverage", scoverageRuntime: "org.scoverage:scalac-scoverage-runtime_$versions.baseScala:$versions.scoverage", slf4jApi: "org.slf4j:slf4j-api:$versions.slf4j", slf4jlog4j: "org.slf4j:slf4j-log4j12:$versions.slf4j", snappy: "org.xerial.snappy:snappy-java:$versions.snappy", zkclient: "com.101tec:zkclient:$versions.zkclient", zookeeper: "org.apache.zookeeper:zookeeper:$versions.zookeeper", jfreechart: "jfreechart:jfreechart:$versions.jfreechart", mavenArtifact: "org.apache.maven:maven-artifact:$versions.mavenArtifact", zstd: "com.github.luben:zstd-jni:$versions.zstd", httpclient: "org.apache.httpcomponents:httpclient:$versions.httpclient" ]