| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| |
| 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. |
| |
| --> |
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <packaging>pom</packaging> |
| <parent> |
| <groupId>org.apache</groupId> |
| <artifactId>apache</artifactId> |
| <version>29</version> |
| </parent> |
| |
| <groupId>org.apache.pulsar</groupId> |
| <artifactId>pulsar</artifactId> |
| |
| <version>3.2.0-SNAPSHOT</version> |
| |
| <name>Pulsar</name> |
| <description>Pulsar is a distributed pub-sub messaging platform with a very |
| flexible messaging model and an intuitive client API.</description> |
| <url>https://github.com/apache/pulsar</url> |
| |
| <organization> |
| <name>Apache Software Foundation</name> |
| <url>https://www.apache.org/</url> |
| </organization> |
| <inceptionYear>2017</inceptionYear> |
| |
| <developers> |
| <developer> |
| <organization>Apache Pulsar developers</organization> |
| <organizationUrl>https://pulsar.apache.org/</organizationUrl> |
| </developer> |
| </developers> |
| |
| <licenses> |
| <license> |
| <name>Apache License, Version 2.0</name> |
| <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> |
| <distribution>repo</distribution> |
| </license> |
| </licenses> |
| |
| <scm> |
| <url>https://github.com/apache/pulsar</url> |
| <connection>scm:git:https://github.com/apache/pulsar.git</connection> |
| <developerConnection>scm:git:ssh://git@github.com:apache/pulsar.git</developerConnection> |
| </scm> |
| |
| <ciManagement> |
| <system>GitHub Actions</system> |
| <url>https://github.com/apache/pulsar/actions</url> |
| </ciManagement> |
| |
| <issueManagement> |
| <system>Github</system> |
| <url>https://github.com/apache/pulsar/issues</url> |
| </issueManagement> |
| |
| <properties> |
| <maven.compiler.source>17</maven.compiler.source> |
| <maven.compiler.target>17</maven.compiler.target> |
| <pulsar.broker.compiler.release>${maven.compiler.target}</pulsar.broker.compiler.release> |
| <pulsar.client.compiler.release>8</pulsar.client.compiler.release> |
| |
| <pulsar.client.python.version>3.2.0</pulsar.client.python.version> |
| |
| <!--config keys to configure test selection --> |
| <include>**/Test*.java,**/*Test.java,**/*Tests.java,**/*TestCase.java</include> |
| <exclude/> |
| <groups/> |
| <excludedGroups>quarantine</excludedGroups> |
| |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> |
| <project.build.outputTimestamp>2023-09-08T03:29:19Z</project.build.outputTimestamp> |
| <redirectTestOutputToFile>true</redirectTestOutputToFile> |
| |
| <!-- By default build for local Docker platform. |
| To create multi-arch image, pass -Ddocker.platforms=linux/arm64,linux/amd64 |
| --> |
| <docker.platforms></docker.platforms> |
| |
| <!-- required for running tests on JDK11+ --> |
| <test.additional.args> |
| --add-opens java.base/jdk.internal.loader=ALL-UNNAMED |
| --add-opens java.base/java.lang=ALL-UNNAMED <!--Mockito--> |
| --add-opens java.base/java.io=ALL-UNNAMED <!--Bookkeeper NativeIO--> |
| --add-opens java.base/java.util=ALL-UNNAMED <!--System Lambda--> |
| --add-opens java.base/sun.net=ALL-UNNAMED <!--netty.DnsResolverUtil--> |
| --add-opens java.management/sun.management=ALL-UNNAMED <!--JvmDefaultGCMetricsLogger & MBeanStatsGenerator--> |
| --add-opens jdk.management/com.sun.management.internal=ALL-UNNAMED <!--MBeanStatsGenerator--> |
| --add-opens java.base/jdk.internal.platform=ALL-UNNAMED <!--LinuxInfoUtils--> |
| </test.additional.args> |
| <testReuseFork>true</testReuseFork> |
| <testForkCount>4</testForkCount> |
| <testRealAWS>false</testRealAWS> |
| <testRetryCount>1</testRetryCount> |
| <testFailFast>true</testFailFast> |
| <testFailFastFile></testFailFastFile> |
| <testJacocoAgentArgument/> |
| <integrationtest.coverage.enabled>false</integrationtest.coverage.enabled> |
| <integrationtest.coverage.dir>${project.build.directory}</integrationtest.coverage.dir> |
| <!-- skip jacoco report by default since it's not a proper aggregate report --> |
| <jacoco.report.skip>true</jacoco.report.skip> |
| <testHeapDumpPath>/tmp</testHeapDumpPath> |
| <surefire.shutdown>kill</surefire.shutdown> |
| <docker.organization>apachepulsar</docker.organization> |
| <skipSourceReleaseAssembly>false</skipSourceReleaseAssembly> |
| <skipBuildDistribution>false</skipBuildDistribution> |
| <shadePluginPhase>package</shadePluginPhase> |
| <narPluginPhase>package</narPluginPhase> |
| |
| <!-- apache commons --> |
| <commons-compress.version>1.21</commons-compress.version> |
| |
| <bookkeeper.version>4.16.3</bookkeeper.version> |
| <zookeeper.version>3.8.3</zookeeper.version> |
| <commons-cli.version>1.5.0</commons-cli.version> |
| <commons-text.version>1.10.0</commons-text.version> |
| <snappy.version>1.1.10.5</snappy.version> <!-- ZooKeeper server --> |
| <dropwizardmetrics.version>4.1.12.1</dropwizardmetrics.version> <!-- ZooKeeper server --> |
| <curator.version>5.1.0</curator.version> |
| <netty.version>4.1.100.Final</netty.version> |
| <netty-iouring.version>0.0.21.Final</netty-iouring.version> |
| <jetty.version>9.4.53.v20231009</jetty.version> |
| <conscrypt.version>2.5.2</conscrypt.version> |
| <jersey.version>2.34</jersey.version> |
| <athenz.version>1.10.50</athenz.version> |
| <prometheus.version>0.16.0</prometheus.version> |
| <vertx.version>4.3.8</vertx.version> |
| <rocksdb.version>7.9.2</rocksdb.version> |
| <slf4j.version>1.7.32</slf4j.version> |
| <commons.collections4.version>4.4</commons.collections4.version> |
| <log4j2.version>2.18.0</log4j2.version> |
| <bouncycastle.version>1.75</bouncycastle.version> |
| <bouncycastle.bcpkix-fips.version>1.0.6</bouncycastle.bcpkix-fips.version> |
| <bouncycastle.bc-fips.version>1.0.2.3</bouncycastle.bc-fips.version> |
| <jackson.version>2.14.2</jackson.version> |
| <reflections.version>0.10.2</reflections.version> |
| <swagger.version>1.6.2</swagger.version> |
| <puppycrawl.checkstyle.version>8.37</puppycrawl.checkstyle.version> |
| <docker-maven.version>0.42.1</docker-maven.version> |
| <docker.verbose>true</docker.verbose> |
| <typetools.version>0.5.0</typetools.version> |
| <protobuf3.version>3.19.6</protobuf3.version> |
| <protoc3.version>${protobuf3.version}</protoc3.version> |
| <grpc.version>1.55.3</grpc.version> |
| <google-http-client.version>1.41.0</google-http-client.version> |
| <perfmark.version>0.26.0</perfmark.version> |
| <protoc-gen-grpc-java.version>${grpc.version}</protoc-gen-grpc-java.version> |
| <gson.version>2.8.9</gson.version> |
| <system-lambda.version>1.2.1</system-lambda.version> |
| <sketches.version>0.8.3</sketches.version> |
| <hbc-core.version>2.2.0</hbc-core.version> |
| <cassandra.version>3.11.2</cassandra.version> |
| <aerospike-client.version>4.4.20</aerospike-client.version> |
| <kafka-client.version>3.4.0</kafka-client.version> |
| <rabbitmq-client.version>5.5.3</rabbitmq-client.version> |
| <aws-sdk.version>1.12.262</aws-sdk.version> |
| <avro.version>1.11.3</avro.version> |
| <joda.version>2.10.10</joda.version> |
| <jclouds.version>2.5.0</jclouds.version> |
| <guice.version>5.1.0</guice.version> |
| <sqlite-jdbc.version>3.42.0.0</sqlite-jdbc.version> |
| <mysql-jdbc.version>8.0.11</mysql-jdbc.version> |
| <postgresql-jdbc.version>42.5.1</postgresql-jdbc.version> |
| <clickhouse-jdbc.version>0.4.6</clickhouse-jdbc.version> |
| <mariadb-jdbc.version>2.7.5</mariadb-jdbc.version> |
| <openmldb-jdbc.version>0.4.4-hotfix1</openmldb-jdbc.version> |
| <hdfs-offload-version3>3.3.5</hdfs-offload-version3> |
| <json-smart.version>2.4.10</json-smart.version> |
| <opensearch.version>1.2.4</opensearch.version> |
| <elasticsearch-java.version>8.5.2</elasticsearch-java.version> |
| <trino.version>368</trino.version> |
| <debezium.version>1.9.7.Final</debezium.version> |
| <debezium.postgresql.version>42.5.0</debezium.postgresql.version> |
| <debezium.mysql.version>8.0.30</debezium.mysql.version> |
| <!-- Override version that brings CVE-2022-3143 with debezium --> |
| <wildfly-elytron.version>1.15.16.Final</wildfly-elytron.version> |
| <jsonwebtoken.version>0.11.1</jsonwebtoken.version> |
| <opencensus.version>0.28.0</opencensus.version> |
| <hadoop2.version>2.10.2</hadoop2.version> |
| <hadoop3.version>3.3.5</hadoop3.version> |
| <hbase.version>2.4.16</hbase.version> |
| <guava.version>32.1.2-jre</guava.version> |
| <jcip.version>1.0</jcip.version> |
| <prometheus-jmx.version>0.16.1</prometheus-jmx.version> |
| <confluent.version>6.2.8</confluent.version> |
| <aircompressor.version>0.20</aircompressor.version> |
| <asynchttpclient.version>2.12.1</asynchttpclient.version> |
| <jcommander.version>1.82</jcommander.version> |
| <commons-lang3.version>3.11</commons-lang3.version> |
| <commons-configuration.version>1.10</commons-configuration.version> |
| <commons-io.version>2.8.0</commons-io.version> |
| <commons-codec.version>1.15</commons-codec.version> |
| <javax.ws.rs-api.version>2.1</javax.ws.rs-api.version> |
| <hdrHistogram.version>2.1.9</hdrHistogram.version> |
| <javax.servlet-api>3.1.0</javax.servlet-api> |
| <caffeine.version>2.9.1</caffeine.version> |
| <java-semver.version>0.9.0</java-semver.version> |
| <jline.version>2.14.6</jline.version> |
| <jline3.version>3.21.0</jline3.version> |
| <hppc.version>0.9.1</hppc.version> |
| <spark-streaming_2.10.version>2.1.0</spark-streaming_2.10.version> |
| <assertj-core.version>3.24.2</assertj-core.version> |
| <lombok.version>1.18.30</lombok.version> |
| <javax.annotation-api.version>1.3.2</javax.annotation-api.version> |
| <jaxb-api>2.3.1</jaxb-api> |
| <javax.activation.version>1.2.0</javax.activation.version> |
| <jakarta.activation.version>1.2.2</jakarta.activation.version> |
| <jakarta.xml.bind.version>2.3.3</jakarta.xml.bind.version> |
| <jakarta.validation.version>2.0.2</jakarta.validation.version> |
| <jna.version>5.12.1</jna.version> |
| <kubernetesclient.version>18.0.0</kubernetesclient.version> |
| <okhttp3.version>4.9.3</okhttp3.version> |
| <!-- use okio version that matches the okhttp3 version --> |
| <okio.version>1.17.6</okio.version> |
| <!-- override kotlin-stdlib used by okio in order to address CVE-2020-29582 --> |
| <kotlin-stdlib.version>1.8.20</kotlin-stdlib.version> |
| <nsq-client.version>1.0</nsq-client.version> |
| <cron-utils.version>9.1.6</cron-utils.version> |
| <spring.version>5.3.27</spring.version> |
| <apache-http-client.version>4.5.13</apache-http-client.version> |
| <apache-httpcomponents.version>4.4.15</apache-httpcomponents.version> |
| <jetcd.version>0.7.5</jetcd.version> |
| <snakeyaml.version>2.0</snakeyaml.version> |
| <ant.version>1.10.12</ant.version> |
| <seancfoley.ipaddress.version>5.3.3</seancfoley.ipaddress.version> |
| <disruptor.version>3.4.3</disruptor.version> |
| <zstd-jni.version>1.5.2-3</zstd-jni.version> |
| <netty-reactive-streams.version>2.0.6</netty-reactive-streams.version> |
| |
| <!-- test dependencies --> |
| <testcontainers.version>1.18.3</testcontainers.version> |
| <hamcrest.version>2.2</hamcrest.version> |
| |
| <!-- Set docker-java.version to the version of docker-java used in Testcontainers --> |
| <docker-java.version>3.3.0</docker-java.version> |
| <kerby.version>1.1.1</kerby.version> |
| <testng.version>7.7.1</testng.version> |
| <mockito.version>5.6.0</mockito.version> |
| <javassist.version>3.25.0-GA</javassist.version> |
| <skyscreamer.version>1.5.0</skyscreamer.version> |
| <objenesis.version>3.3</objenesis.version> <!-- should match mockito-core objenesis version --> |
| <awaitility.version>4.2.0</awaitility.version> |
| <jettison.version>1.5.4</jettison.version> |
| <woodstox.version>5.4.0</woodstox.version> |
| <wiremock.version>2.33.2</wiremock.version> |
| |
| <!-- Plugin dependencies --> |
| <protobuf-maven-plugin.version>0.6.1</protobuf-maven-plugin.version> |
| <exec-maven-plugin.version>3.0.0</exec-maven-plugin.version> |
| <license-maven-plugin.version>4.1</license-maven-plugin.version> |
| <directory-maven-plugin.version>1.0</directory-maven-plugin.version> |
| <maven-enforcer-plugin.version>3.3.0</maven-enforcer-plugin.version> |
| <!-- surefire.version is defined in apache parent pom --> |
| <!-- it is used for surefire, failsafe and surefire-report plugins --> |
| <surefire.version>3.1.0</surefire.version> |
| <maven-assembly-plugin.version>3.5.0</maven-assembly-plugin.version> |
| <maven-compiler-plugin.version>3.11.0</maven-compiler-plugin.version> |
| <maven-dependency-plugin.version>3.5.0</maven-dependency-plugin.version> |
| <maven-modernizer-plugin.version>2.3.0</maven-modernizer-plugin.version> |
| <maven-shade-plugin>3.4.1</maven-shade-plugin> |
| <maven-antrun-plugin.version>3.1.0</maven-antrun-plugin.version> |
| <properties-maven-plugin.version>1.1.0</properties-maven-plugin.version> |
| <nifi-nar-maven-plugin.version>1.5.0</nifi-nar-maven-plugin.version> |
| <maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version> |
| <git-commit-id-plugin.version>4.9.10</git-commit-id-plugin.version> |
| <wagon-ssh-external.version>3.5.3</wagon-ssh-external.version> |
| <os-maven-plugin.version>1.7.0</os-maven-plugin.version> |
| <jacoco-maven-plugin.version>0.8.11</jacoco-maven-plugin.version> |
| <spotbugs-maven-plugin.version>4.7.3.6</spotbugs-maven-plugin.version> |
| <spotbugs.version>4.7.3</spotbugs.version> |
| <errorprone.version>2.5.1</errorprone.version> |
| <errorprone.javac.version>9+181-r4173-1</errorprone.javac.version> |
| <errorprone-slf4j.version>0.1.4</errorprone-slf4j.version> |
| <j2objc-annotations.version>1.3</j2objc-annotations.version> |
| <lightproto-maven-plugin.version>0.4</lightproto-maven-plugin.version> |
| <dependency-check-maven.version>8.2.1</dependency-check-maven.version> |
| <roaringbitmap.version>0.9.44</roaringbitmap.version> |
| <extra-enforcer-rules.version>1.6.1</extra-enforcer-rules.version> |
| <oshi.version>6.4.0</oshi.version> |
| <checkerframework.version>3.33.0</checkerframework.version> |
| |
| <!-- Used to configure rename.netty.native. Libs --> |
| <rename.netty.native.libs>rename-netty-native-libs.sh</rename.netty.native.libs> |
| </properties> |
| |
| <dependencyManagement> |
| <dependencies> |
| |
| <dependency> |
| <groupId>org.jline</groupId> |
| <artifactId>jline</artifactId> |
| <version>${jline3.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.asynchttpclient</groupId> |
| <artifactId>async-http-client</artifactId> |
| <version>${asynchttpclient.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.typesafe.netty</groupId> |
| <artifactId>netty-reactive-streams</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.testng</groupId> |
| <artifactId>testng</artifactId> |
| <version>${testng.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.yaml</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest</artifactId> |
| <version>${hamcrest.version}</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.awaitility</groupId> |
| <artifactId>awaitility</artifactId> |
| <version>${awaitility.version}</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <version>${mockito.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| <version>${zookeeper.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-classic</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-tcnative</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper-jute</artifactId> |
| <version>${zookeeper.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-cli</groupId> |
| <artifactId>commons-cli</artifactId> |
| <version>${commons-cli.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.dropwizard.metrics</groupId> |
| <artifactId>metrics-core</artifactId> |
| <version>${dropwizardmetrics.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.dropwizard.metrics</groupId> |
| <artifactId>metrics-graphite</artifactId> |
| <version>${dropwizardmetrics.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.dropwizard.metrics</groupId> |
| <artifactId>metrics-jvm</artifactId> |
| <version>${dropwizardmetrics.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.xerial.snappy</groupId> |
| <artifactId>snappy-java</artifactId> |
| <version>${snappy.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| <classifier>tests</classifier> |
| <version>${zookeeper.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-classic</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-tcnative</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>bookkeeper-server</artifactId> |
| <version>${bookkeeper.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <artifactId>slf4j-log4j12</artifactId> |
| <groupId>org.slf4j</groupId> |
| </exclusion> |
| <exclusion> |
| <artifactId>log4j</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.jboss.netty</groupId> |
| <artifactId>netty</artifactId> |
| </exclusion> |
| <!-- exclude all netty dependencies, use whatever pulsar is using --> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>cpu-affinity</artifactId> |
| <version>${bookkeeper.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.vertx</groupId> |
| <artifactId>vertx-core</artifactId> |
| <version>${vertx.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.vertx</groupId> |
| <artifactId>vertx-web</artifactId> |
| <version>${vertx.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.curator</groupId> |
| <artifactId>curator-recipes</artifactId> |
| <version>${curator.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>bookkeeper-common-allocator</artifactId> |
| <version>${bookkeeper.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>bookkeeper-tools-framework</artifactId> |
| <version>${bookkeeper.version}</version> |
| </dependency> |
| |
| <!-- reflection libs --> |
| <dependency> |
| <groupId>org.reflections</groupId> |
| <artifactId>reflections</artifactId> |
| <version>${reflections.version}</version> |
| </dependency> |
| |
| <!-- exclude the grpc version from bookkeeper and use the one defined here --> |
| <dependency> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>stream-storage-java-client</artifactId> |
| <version>${bookkeeper.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-all</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-testing</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-okhttp</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.squareup.okhttp</groupId> |
| <artifactId>okhttp</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.squareup.okio</groupId> |
| <artifactId>okio</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <!-- exclude the grpc version from bookkeeper and use the one defined here --> |
| <dependency> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>stream-storage-server</artifactId> |
| <version>${bookkeeper.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-all</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-okhttp</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.squareup.okhttp</groupId> |
| <artifactId>okhttp</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.squareup.okio</groupId> |
| <artifactId>okio</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>jackson-mapper-asl</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.inferred</groupId> |
| <artifactId>freebuilder</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>bookkeeper-common</artifactId> |
| <version>${bookkeeper.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper.stats</groupId> |
| <artifactId>bookkeeper-stats-api</artifactId> |
| <version>${bookkeeper.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper.stats</groupId> |
| <artifactId>datasketches-metrics-provider</artifactId> |
| <version>${bookkeeper.version}</version> |
| <exclusions> |
| <exclusion> |
| <artifactId>slf4j-log4j12</artifactId> |
| <groupId>org.slf4j</groupId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.bookkeeper.stats</groupId> |
| <artifactId>prometheus-metrics-provider</artifactId> |
| <version>${bookkeeper.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.rocksdb</groupId> |
| <artifactId>rocksdbjni</artifactId> |
| <version>${rocksdb.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.eclipse.jetty</groupId> |
| <artifactId>jetty-server</artifactId> |
| <version>${jetty.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.eclipse.jetty</groupId> |
| <artifactId>jetty-alpn-conscrypt-server</artifactId> |
| <version>${jetty.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.conscrypt</groupId> |
| <artifactId>conscrypt-openjdk-uber</artifactId> |
| <version>${conscrypt.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.eclipse.jetty</groupId> |
| <artifactId>jetty-bom</artifactId> |
| <version>${jetty.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-bom</artifactId> |
| <version>${netty.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.netty.incubator</groupId> |
| <artifactId>netty-incubator-transport-classes-io_uring</artifactId> |
| <version>${netty-iouring.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.netty.incubator</groupId> |
| <artifactId>netty-incubator-transport-native-io_uring</artifactId> |
| <version>${netty-iouring.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.netty.incubator</groupId> |
| <artifactId>netty-incubator-transport-native-io_uring</artifactId> |
| <version>${netty-iouring.version}</version> |
| <classifier>linux-x86_64</classifier> |
| </dependency> |
| <dependency> |
| <groupId>io.netty.incubator</groupId> |
| <artifactId>netty-incubator-transport-native-io_uring</artifactId> |
| <version>${netty-iouring.version}</version> |
| <classifier>linux-aarch_64</classifier> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.beust</groupId> |
| <artifactId>jcommander</artifactId> |
| <version>${jcommander.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>${guava.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.inject</groupId> |
| <artifactId>guice</artifactId> |
| <version>${guice.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.inject.extensions</groupId> |
| <artifactId>guice-assistedinject</artifactId> |
| <version>${guice.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| <version>${commons-lang3.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-compress</artifactId> |
| <version>${commons-compress.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>commons-configuration</groupId> |
| <artifactId>commons-configuration</artifactId> |
| <version>${commons-configuration.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>commons-io</groupId> |
| <artifactId>commons-io</artifactId> |
| <version>${commons-io.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-text</artifactId> |
| <version>${commons-text.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-simple</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>jcl-over-slf4j</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-bom</artifactId> |
| <version>${log4j2.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>commons-codec</groupId> |
| <artifactId>commons-codec</artifactId> |
| <version>${commons-codec.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.glassfish.jersey.core</groupId> |
| <artifactId>jersey-server</artifactId> |
| <version>${jersey.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.glassfish.jersey.core</groupId> |
| <artifactId>jersey-client</artifactId> |
| <version>${jersey.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.glassfish.jersey.inject</groupId> |
| <artifactId>jersey-hk2</artifactId> |
| <version>${jersey.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.glassfish.jersey.containers</groupId> |
| <artifactId>jersey-container-servlet-core</artifactId> |
| <version>${jersey.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.glassfish.jersey.containers</groupId> |
| <artifactId>jersey-container-servlet</artifactId> |
| <version>${jersey.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>javax.ws.rs-api</artifactId> |
| <version>${javax.ws.rs-api.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.glassfish.jersey.media</groupId> |
| <artifactId>jersey-media-json-jackson</artifactId> |
| <version>${jersey.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>jakarta.activation</groupId> |
| <artifactId>jakarta.activation-api</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.glassfish.jersey.media</groupId> |
| <artifactId>jersey-media-multipart</artifactId> |
| <version>${jersey.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>net.java.dev.jna</groupId> |
| <artifactId>jna</artifactId> |
| <version>${jna.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.github.docker-java</groupId> |
| <artifactId>docker-java-core</artifactId> |
| <version>${docker-java.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>com.github.docker-java</groupId> |
| <artifactId>docker-java-api</artifactId> |
| <version>${docker-java.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.github.docker-java</groupId> |
| <artifactId>docker-java-transport-zerodep</artifactId> |
| <version>${docker-java.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.fasterxml.jackson</groupId> |
| <artifactId>jackson-bom</artifactId> |
| <version>${jackson.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.codehaus.jettison</groupId> |
| <artifactId>jettison</artifactId> |
| <version>${jettison.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.fasterxml.woodstox</groupId> |
| <artifactId>woodstox-core</artifactId> |
| <version>${woodstox.version}</version> |
| </dependency> |
| |
| |
| <dependency> |
| <groupId>org.hdrhistogram</groupId> |
| <artifactId>HdrHistogram</artifactId> |
| <version>${hdrHistogram.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.swagger</groupId> |
| <artifactId>swagger-core</artifactId> |
| <version>${swagger.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.swagger</groupId> |
| <artifactId>swagger-annotations</artifactId> |
| <version>${swagger.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>javax.servlet</groupId> |
| <artifactId>javax.servlet-api</artifactId> |
| <version>${javax.servlet-api}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.github.ben-manes.caffeine</groupId> |
| <artifactId>caffeine</artifactId> |
| <version>${caffeine.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>bcpkix-jdk18on</artifactId> |
| <version>${bouncycastle.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.cronutils</groupId> |
| <artifactId>cron-utils</artifactId> |
| <version>${cron-utils.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.glassfish</groupId> |
| <artifactId>javax.el</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.yahoo.athenz</groupId> |
| <artifactId>athenz-zts-java-client-core</artifactId> |
| <version>${athenz.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.yahoo.athenz</groupId> |
| <artifactId>athenz-zpe-java-client</artifactId> |
| <version>${athenz.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.yahoo.athenz</groupId> |
| <artifactId>athenz-cert-refresher</artifactId> |
| <version>${athenz.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.yahoo.athenz</groupId> |
| <artifactId>athenz-auth-core</artifactId> |
| <version>${athenz.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.github.zafarkhaja</groupId> |
| <artifactId>java-semver</artifactId> |
| <version>${java-semver.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.prometheus</groupId> |
| <artifactId>simpleclient</artifactId> |
| <version>${prometheus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.prometheus</groupId> |
| <artifactId>simpleclient_hotspot</artifactId> |
| <version>${prometheus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.prometheus</groupId> |
| <artifactId>simpleclient_log4j2</artifactId> |
| <version>${prometheus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.prometheus</groupId> |
| <artifactId>simpleclient_servlet</artifactId> |
| <version>${prometheus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.prometheus</groupId> |
| <artifactId>simpleclient_jetty</artifactId> |
| <version>${prometheus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.prometheus</groupId> |
| <artifactId>simpleclient_caffeine</artifactId> |
| <version>${prometheus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.carrotsearch</groupId> |
| <artifactId>hppc</artifactId> |
| <version>${hppc.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.etcd</groupId> |
| <artifactId>jetcd-core</artifactId> |
| <version>${jetcd.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.etcd</groupId> |
| <artifactId>jetcd-test</artifactId> |
| <version>${jetcd.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-streaming_2.10</artifactId> |
| <version>${spark-streaming_2.10.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-codec-http</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-transport-native-epoll</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>netty</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-all</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.jsonwebtoken</groupId> |
| <artifactId>jjwt-api</artifactId> |
| <version>${jsonwebtoken.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.jsonwebtoken</groupId> |
| <artifactId>jjwt-impl</artifactId> |
| <version>${jsonwebtoken.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.jsonwebtoken</groupId> |
| <artifactId>jjwt-jackson</artifactId> |
| <version>${jsonwebtoken.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>net.jodah</groupId> |
| <artifactId>typetools</artifactId> |
| <version>${typetools.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-bom</artifactId> |
| <version>${grpc.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-all</artifactId> |
| <version>${grpc.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-testing</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-okhttp</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.squareup.okhttp</groupId> |
| <artifactId>okhttp</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.squareup.okio</groupId> |
| <artifactId>okio</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.grpc</groupId> |
| <artifactId>grpc-xds</artifactId> |
| <version>${grpc.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.http-client</groupId> |
| <artifactId>google-http-client</artifactId> |
| <version>${google-http-client.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.http-client</groupId> |
| <artifactId>google-http-client-jackson2</artifactId> |
| <version>${google-http-client.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.http-client</groupId> |
| <artifactId>google-http-client-gson</artifactId> |
| <version>${google-http-client.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.perfmark</groupId> |
| <artifactId>perfmark-api</artifactId> |
| <version>${perfmark.version}</version> |
| <scope>runtime</scope> |
| <exclusions> |
| <exclusion> |
| <artifactId>error_prone_annotations</artifactId> |
| <groupId>com.google.errorprone</groupId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.protobuf</groupId> |
| <artifactId>protobuf-bom</artifactId> |
| <version>${protobuf3.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.code.gson</groupId> |
| <artifactId>gson</artifactId> |
| <version>${gson.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.yahoo.datasketches</groupId> |
| <artifactId>sketches-core</artifactId> |
| <version>${sketches.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.amazonaws</groupId> |
| <artifactId>aws-java-sdk-bom</artifactId> |
| <version>${aws-sdk.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.distributedlog</groupId> |
| <artifactId>distributedlog-core</artifactId> |
| <version>${bookkeeper.version}</version> |
| <exclusions> |
| <!-- exclude bookkeeper, reply on the bookkeeper version that pulsar uses --> |
| <exclusion> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>bookkeeper-server</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-collections4</artifactId> |
| <version>${commons.collections4.version}</version> |
| </dependency> |
| |
| <!-- test dependencies --> |
| <dependency> |
| <groupId>com.lmax</groupId> |
| <artifactId>disruptor</artifactId> |
| <version>${disruptor.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.testcontainers</groupId> |
| <artifactId>testcontainers-bom</artifactId> |
| <version>${testcontainers.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.datastax.cassandra</groupId> |
| <artifactId>cassandra-driver-core</artifactId> |
| <version>${cassandra.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.assertj</groupId> |
| <artifactId>assertj-core</artifactId> |
| <version>${assertj-core.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.projectlombok</groupId> |
| <artifactId>lombok</artifactId> |
| <version>${lombok.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>javax.annotation</groupId> |
| <artifactId>javax.annotation-api</artifactId> |
| <version>${javax.annotation-api.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| <version>${jaxb-api}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>jakarta.xml.bind</groupId> |
| <artifactId>jakarta.xml.bind-api</artifactId> |
| <version>${jakarta.xml.bind.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.sun.activation</groupId> |
| <artifactId>javax.activation</artifactId> |
| <version>${javax.activation.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.sun.activation</groupId> |
| <artifactId>jakarta.activation</artifactId> |
| <version>${jakarta.activation.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>jakarta.activation</groupId> |
| <artifactId>jakarta.activation-api</artifactId> |
| <version>${jakarta.activation.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>jakarta.validation</groupId> |
| <artifactId>jakarta.validation-api</artifactId> |
| <version>${jakarta.validation.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.opencensus</groupId> |
| <artifactId>opencensus-api</artifactId> |
| <version>${opencensus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.opencensus</groupId> |
| <artifactId>opencensus-contrib-http-util</artifactId> |
| <version>${opencensus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.opencensus</groupId> |
| <artifactId>opencensus-contrib-grpc-metrics</artifactId> |
| <version>${opencensus.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.opensearch.client</groupId> |
| <artifactId>opensearch-rest-high-level-client</artifactId> |
| <version>${opensearch.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>co.elastic.clients</groupId> |
| <artifactId>elasticsearch-java</artifactId> |
| <version>${elasticsearch-java.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>joda-time</groupId> |
| <artifactId>joda-time</artifactId> |
| <version>${joda.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.javassist</groupId> |
| <artifactId>javassist</artifactId> |
| <version>${javassist.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>net.jcip</groupId> |
| <artifactId>jcip-annotations</artifactId> |
| <version>${jcip.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>io.airlift</groupId> |
| <artifactId>aircompressor</artifactId> |
| <version>${aircompressor.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.openjdk.jol</groupId> |
| <artifactId>jol-core</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.objenesis</groupId> |
| <artifactId>objenesis</artifactId> |
| <version>${objenesis.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpclient</artifactId> |
| <version>${apache-http-client.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpcore</artifactId> |
| <version>${apache-httpcomponents.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs-annotations</artifactId> |
| <version>${spotbugs.version}</version> |
| <scope>provided</scope> |
| <optional>true</optional> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.errorprone</groupId> |
| <artifactId>error_prone_annotations</artifactId> |
| <version>${errorprone.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.google.j2objc</groupId> |
| <artifactId>j2objc-annotations</artifactId> |
| <version>${j2objc-annotations.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.yaml</groupId> |
| <artifactId>snakeyaml</artifactId> |
| <version>${snakeyaml.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.ant</groupId> |
| <artifactId>ant</artifactId> |
| <version>${ant.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.squareup.okhttp3</groupId> |
| <artifactId>okhttp</artifactId> |
| <version>${okhttp3.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.squareup.okhttp3</groupId> |
| <artifactId>okhttp-urlconnection</artifactId> |
| <version>${okhttp3.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.squareup.okhttp3</groupId> |
| <artifactId>logging-interceptor</artifactId> |
| <version>${okhttp3.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.squareup.okio</groupId> |
| <artifactId>okio</artifactId> |
| <version>${okio.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-stdlib</artifactId> |
| <version>${kotlin-stdlib.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-stdlib-common</artifactId> |
| <version>${kotlin-stdlib.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-stdlib-jdk8</artifactId> |
| <version>${kotlin-stdlib.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.github.luben</groupId> |
| <artifactId>zstd-jni</artifactId> |
| <version>${zstd-jni.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.typesafe.netty</groupId> |
| <artifactId>netty-reactive-streams</artifactId> |
| <version>${netty-reactive-streams.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.roaringbitmap</groupId> |
| <artifactId>RoaringBitmap</artifactId> |
| <version>${roaringbitmap.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.github.oshi</groupId> |
| <artifactId>oshi-core-java11</artifactId> |
| <version>${oshi.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.checkerframework</groupId> |
| <artifactId>checker-qual</artifactId> |
| <version>${checkerframework.version}</version> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <dependencies> |
| <!-- These dependencies are common to all the submodules --> |
| <dependency> |
| <groupId>org.apache.pulsar</groupId> |
| <artifactId>buildtools</artifactId> |
| <version>${project.version}</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.testng</groupId> |
| <artifactId>testng</artifactId> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.github.stefanbirkner</groupId> |
| <artifactId>system-lambda</artifactId> |
| <version>${system-lambda.version}</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.assertj</groupId> |
| <artifactId>assertj-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.projectlombok</groupId> |
| <artifactId>lombok</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>javax.annotation</groupId> |
| <artifactId>javax.annotation-api</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| |
| <dependency> |
| <!-- We use MockedBookKeeper in many unit tests --> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>bookkeeper-server</artifactId> |
| <version>${bookkeeper.version}</version> |
| <scope>test</scope> |
| <classifier>tests</classifier> |
| <exclusions> |
| <exclusion> |
| <groupId>org.bouncycastle</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <artifactId>log4j</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <!-- We use TestStatsProvider in many unit tests --> |
| <groupId>org.apache.bookkeeper</groupId> |
| <artifactId>bookkeeper-common</artifactId> |
| <version>${bookkeeper.version}</version> |
| <scope>test</scope> |
| <classifier>tests</classifier> |
| <exclusions> |
| <exclusion> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <finalName>${project.artifactId}</finalName> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <configuration> |
| <encoding>UTF-8</encoding> |
| <showDeprecation>true</showDeprecation> |
| <showWarnings>true</showWarnings> |
| <!-- workaround https://issues.apache.org/jira/browse/MCOMPILER-205 --> |
| <useIncrementalCompilation>false</useIncrementalCompilation> |
| <annotationProcessorPaths> |
| <path> |
| <groupId>org.projectlombok</groupId> |
| <artifactId>lombok</artifactId> |
| <version>${lombok.version}</version> |
| </path> |
| </annotationProcessorPaths> |
| <compilerArgs> |
| <arg>-parameters</arg> |
| <!-- enable 'all' lint warnings with some exclusions --> |
| <arg>-Xlint:all</arg> |
| <arg>-Xlint:-options</arg> |
| <arg>-Xlint:-serial</arg> |
| <arg>-Xlint:-classfile</arg> |
| <arg>-Xlint:-processing</arg> |
| <arg>-Xpkginfo:always</arg> |
| </compilerArgs> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <argLine>${testJacocoAgentArgument} -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${testHeapDumpPath} -XX:+ExitOnOutOfMemoryError -Xmx1G -XX:+UseZGC |
| -Dpulsar.allocator.pooled=true |
| -Dpulsar.allocator.leak_detection=Advanced |
| -Dpulsar.allocator.exit_on_oom=false |
| -Dpulsar.allocator.out_of_memory_policy=FallbackToHeap |
| -Dio.netty.tryReflectionSetAccessible=true |
| ${test.additional.args} |
| </argLine> |
| <reuseForks>${testReuseFork}</reuseForks> |
| <forkCount>${testForkCount}</forkCount> |
| <shutdown>${surefire.shutdown}</shutdown> |
| <forkedProcessExitTimeoutInSeconds>60</forkedProcessExitTimeoutInSeconds> |
| <redirectTestOutputToFile>${redirectTestOutputToFile}</redirectTestOutputToFile> |
| <trimStackTrace>false</trimStackTrace> |
| <systemPropertyVariables> |
| <testRealAWS>${testRealAWS}</testRealAWS> |
| <testRetryCount>${testRetryCount}</testRetryCount> |
| <testFailFast>${testFailFast}</testFailFast> |
| <testFailFastFile>${testFailFastFile}</testFailFastFile> |
| </systemPropertyVariables> |
| <properties> |
| <property> |
| <name>listener</name> |
| <value>org.apache.pulsar.tests.PulsarTestListener,org.apache.pulsar.tests.JacocoDumpListener,org.apache.pulsar.tests.TraceTestResourceCleanupListener,org.apache.pulsar.tests.AnnotationListener,org.apache.pulsar.tests.FailFastNotifier,org.apache.pulsar.tests.MockitoCleanupListener,org.apache.pulsar.tests.FastThreadLocalCleanupListener,org.apache.pulsar.tests.ThreadLeakDetectorListener,org.apache.pulsar.tests.SingletonCleanerListener</value> |
| </property> |
| </properties> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.maven.surefire</groupId> |
| <artifactId>surefire-testng</artifactId> |
| <version>${surefire.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.commonjava.maven.plugins</groupId> |
| <artifactId>directory-maven-plugin</artifactId> |
| <version>${directory-maven-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>directories</id> |
| <goals> |
| <goal>directory-of</goal> |
| </goals> |
| <phase>initialize</phase> |
| <configuration> |
| <property>pulsar.basedir</property> |
| <project> |
| <groupId>org.apache.pulsar</groupId> |
| <artifactId>pulsar</artifactId> |
| </project> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>pl.project13.maven</groupId> |
| <artifactId>git-commit-id-plugin</artifactId> |
| <version>${git-commit-id-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>git-info</id> |
| <goals> |
| <goal>revision</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <skip>true</skip> |
| <useNativeGit>true</useNativeGit> |
| <prefix>git</prefix> |
| <failOnNoGitDirectory>false</failOnNoGitDirectory> |
| <failOnUnableToExtractRepoInfo>false</failOnUnableToExtractRepoInfo> |
| <skipPoms>false</skipPoms> |
| <gitDescribe> |
| <skip>true</skip> |
| </gitDescribe> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>com.mycila</groupId> |
| <artifactId>license-maven-plugin</artifactId> |
| <version>${license-maven-plugin.version}</version> |
| <configuration> |
| <licenseSets> |
| <licenseSet> |
| <header>${pulsar.basedir}/src/license-header.txt</header> |
| <excludes> |
| <exclude>LICENSE</exclude> |
| <exclude>NOTICE</exclude> |
| <exclude>**/*.txt</exclude> |
| <exclude>**/*.pem</exclude> |
| <exclude>**/*.crt</exclude> |
| <exclude>**/*.key</exclude> |
| <exclude>**/*.csr</exclude> |
| <exclude>**/*.log</exclude> |
| <exclude>**/*.patch</exclude> |
| <exclude>**/*.avsc</exclude> |
| <exclude>**/*.versionsBackup</exclude> |
| <exclude>**/*.pyc</exclude> |
| <exclude>**/*.graffle</exclude> |
| <exclude>**/*.hgrm</exclude> |
| <exclude>**/src/main/java/org/apache/bookkeeper/mledger/proto/MLDataFormats.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/transaction/coordinator/proto/PulsarTransactionMetadata.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/broker/service/schema/proto/SchemaRegistryFormat.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/common/api/proto/*.java</exclude> |
| <exclude>**/src/test/java/org/apache/pulsar/common/api/proto/*.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/io/kinesis/fbs/CompressionType.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/io/kinesis/fbs/EncryptionCtx.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/io/kinesis/fbs/EncryptionKey.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/io/kinesis/fbs/KeyValue.java</exclude> |
| <exclude>**/src/main/java/org/apache/pulsar/io/kinesis/fbs/Message.java</exclude> |
| <exclude>**/src/main/java/org/apache/bookkeeper/mledger/util/AbstractCASReferenceCounted.java</exclude> |
| <exclude>**/ByteBufCodedInputStream.java</exclude> |
| <exclude>**/ByteBufCodedOutputStream.java</exclude> |
| <exclude>**/ahc.properties</exclude> |
| <exclude>bin/proto/*</exclude> |
| <exclude>conf/schema_example.json</exclude> |
| <exclude>data/**</exclude> |
| <exclude>logs/**</exclude> |
| <exclude>**/circe/**</exclude> |
| <exclude>pulsar-broker/src/test/resources/authentication/basic/.htpasswd</exclude> |
| <exclude>**/django/stats/migrations/*.py</exclude> |
| <exclude>site2/**</exclude> |
| <exclude>generated-site/**</exclude> |
| <exclude>**/*.md</exclude> |
| <exclude>**/.idea/**</exclude> |
| <exclude>**/.mvn/**</exclude> |
| <exclude>**/generated/**</exclude> |
| <exclude>**/zk-3.5-test-data/*</exclude> |
| </excludes> |
| </licenseSet> |
| </licenseSets> |
| <mapping> |
| <java>SLASHSTAR_STYLE</java> |
| <proto>JAVADOC_STYLE</proto> |
| <go>DOUBLESLASH_STYLE</go> |
| <conf>SCRIPT_STYLE</conf> |
| <ini>SCRIPT_STYLE</ini> |
| <yaml>SCRIPT_STYLE</yaml> |
| <tf>SCRIPT_STYLE</tf> |
| <cfg>SCRIPT_STYLE</cfg> |
| <Makefile>SCRIPT_STYLE</Makefile> |
| <service>SCRIPT_STYLE</service> |
| <cc>JAVADOC_STYLE</cc> |
| <md>XML_STYLE</md> |
| <txt>SCRIPT_STYLE</txt> |
| <scss>JAVADOC_STYLE</scss> |
| <Doxyfile>SCRIPT_STYLE</Doxyfile> |
| <pulsar>SCRIPT_STYLE</pulsar> |
| <pulsar-managed-ledger-admin>SCRIPT_STYLE</pulsar-managed-ledger-admin> |
| <pulsar-daemon>SCRIPT_STYLE</pulsar-daemon> |
| <pulsar-admin>SCRIPT_STYLE</pulsar-admin> |
| <pulsar-perf>SCRIPT_STYLE</pulsar-perf> |
| <pulsar-client>SCRIPT_STYLE</pulsar-client> |
| <pulsar-shell>SCRIPT_STYLE</pulsar-shell> |
| <bookkeeper>SCRIPT_STYLE</bookkeeper> |
| <tfvars>SCRIPT_STYLE</tfvars> |
| </mapping> |
| </configuration> |
| <executions> |
| <execution> |
| <phase>verify</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <configuration> |
| <excludes> |
| <!-- Other license files --> |
| <exclude>licenses/LICENSE-*.txt</exclude> |
| <exclude>src/assemble/README.bin.txt</exclude> |
| <exclude>src/assemble/LICENSE.bin.txt</exclude> |
| <exclude>src/assemble/NOTICE.bin.txt</exclude> |
| |
| <!-- These files are generated automatically by the Protobuf compiler |
| and are included in source tree for convenience --> |
| <exclude>src/main/java/org/apache/bookkeeper/mledger/proto/MLDataFormats.java</exclude> |
| <exclude>src/main/java/org/apache/pulsar/broker/service/schema/proto/SchemaRegistryFormat.java</exclude> |
| <exclude>bin/proto/MLDataFormats_pb2.py</exclude> |
| |
| <!-- These files are generated automatically by the Avro compiler |
| and are included in source tree for convenience --> |
| <exclude>**/avro/generated/*.java</exclude> |
| |
| <!-- Avro schema definitions - JSON format --> |
| <exclude>**/*.avsc</exclude> |
| |
| <!-- pulasr-io-connector kinesis : auto generated files from flatbuffer schema --> |
| <exclude>src/main/java/org/apache/pulsar/io/kinesis/fbs/CompressionType.java</exclude> |
| <exclude>src/main/java/org/apache/pulsar/io/kinesis/fbs/EncryptionCtx.java</exclude> |
| <exclude>src/main/java/org/apache/pulsar/io/kinesis/fbs/EncryptionKey.java</exclude> |
| <exclude>src/main/java/org/apache/pulsar/io/kinesis/fbs/KeyValue.java</exclude> |
| <exclude>src/main/java/org/apache/pulsar/io/kinesis/fbs/Message.java</exclude> |
| |
| <!-- Imported from Netty - Apache License v2 --> |
| <exclude>src/main/java/org/apache/bookkeeper/mledger/util/AbstractCASReferenceCounted.java</exclude> |
| |
| <!-- This is generated during maven build --> |
| <exclude>dependency-reduced-pom.xml</exclude> |
| |
| <!-- These files is go module configs --> |
| <exclude>pulsar-client-go/go.mod</exclude> |
| <exclude>pulsar-client-go/go.sum</exclude> |
| <exclude>pulsar-function-go/go.mod</exclude> |
| <exclude>pulsar-function-go/go.sum</exclude> |
| <exclude>pulsar-function-go/examples/go.mod</exclude> |
| <exclude>pulsar-function-go/examples/go.sum</exclude> |
| |
| <!-- This is a text property file that contains just a class name --> |
| <exclude>**/META-INF/services/com.scurrilous.circe.HashProvider</exclude> |
| <exclude>**/META-INF/services/io.trino.spi.Plugin</exclude> |
| |
| <!-- Django generated code --> |
| <exclude>**/django/stats/migrations/*.py</exclude> |
| <exclude>**/conf/uwsgi_params</exclude> |
| |
| <!-- Exclude certificates used for tests --> |
| <exclude>**/*.crt</exclude> |
| <exclude>**/*.key</exclude> |
| <exclude>**/*.csr</exclude> |
| <exclude>**/*.pem</exclude> |
| <exclude>**/*.json</exclude> |
| <exclude>**/*.htpasswd</exclude> |
| <exclude>src/test/resources/athenz.conf.test</exclude> |
| <exclude>deployment/terraform-ansible/templates/myid</exclude> |
| <exclude>certificate-authority/index.txt</exclude> |
| <exclude>certificate-authority/serial</exclude> |
| <exclude>certificate-authority/README.md</exclude> |
| |
| <!-- Exclude ZK test data file --> |
| <exclude>**/zk-3.5-test-data/*</exclude> |
| |
| <!-- Python requirements files --> |
| <exclude>**/requirements.txt</exclude> |
| |
| <!-- Configuration Templates --> |
| <exclude>conf/schema_example.json</exclude> |
| <exclude>**/templates/*.tpl</exclude> |
| |
| <!-- helm files --> |
| <exclude>**/.helmignore</exclude> |
| <exclude>**/_helpers.tpl</exclude> |
| |
| <!-- project ignored files --> |
| <exclude>**/*.md</exclude> |
| <exclude>.github/**</exclude> |
| <exclude>**/*.nar</exclude> |
| <exclude>**/.terraform/**</exclude> |
| <exclude>**/.gitignore</exclude> |
| <exclude>**/.svn</exclude> |
| <exclude>**/*.iws</exclude> |
| <exclude>**/*.ipr</exclude> |
| <exclude>**/*.iml</exclude> |
| <exclude>**/*.cbp</exclude> |
| <exclude>**/*.pyc</exclude> |
| <exclude>**/.classpath</exclude> |
| <exclude>**/.project</exclude> |
| <exclude>**/.settings</exclude> |
| <exclude>**/target/**</exclude> |
| <exclude>**/*.log</exclude> |
| <exclude>**/build/**</exclude> |
| <exclude>**/file:/**</exclude> |
| <exclude>**/SecurityAuth.audit*</exclude> |
| <exclude>**/site2/**</exclude> |
| <exclude>**/.idea/**</exclude> |
| <exclude>**/.mvn/**</exclude> |
| <exclude>**/*.a</exclude> |
| <exclude>**/*.so</exclude> |
| <exclude>**/*.so.*</exclude> |
| <exclude>**/*.dylib</exclude> |
| <exclude>src/test/resources/*.txt</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>${maven-enforcer-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>enforce-maven</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <requireJavaVersion> |
| <version>17</version> |
| <message>Java 17+ is required to build Pulsar.</message> |
| </requireJavaVersion> |
| <requireMavenVersion> |
| <version>3.6.1</version> |
| </requireMavenVersion> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>${maven-compiler-plugin.version}</version> |
| <configuration> |
| <release>${pulsar.broker.compiler.release}</release> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.gaul</groupId> |
| <artifactId>modernizer-maven-plugin</artifactId> |
| <version>${maven-modernizer-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <includes> |
| <include>${include}</include> |
| </includes> |
| <excludes> |
| <exclude>**/*$*,${exclude}</exclude> |
| </excludes> |
| <groups>${groups}</groups> |
| <excludedGroups>${excludedGroups}</excludedGroups> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <version>${maven-dependency-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-shade-plugin</artifactId> |
| <version>${maven-shade-plugin}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <configuration> |
| <doclint>none</doclint> |
| <notimestamp>true</notimestamp> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <version>${maven-antrun-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>exec-maven-plugin</artifactId> |
| <version>${exec-maven-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.nifi</groupId> |
| <artifactId>nifi-nar-maven-plugin</artifactId> |
| <version>${nifi-nar-maven-plugin.version}</version> |
| <extensions>true</extensions> |
| <configuration> |
| <finalName>${project.artifactId}-${project.version}</finalName> |
| </configuration> |
| <executions> |
| <execution> |
| <id>default-nar</id> |
| <phase>${narPluginPhase}</phase> |
| <goals> |
| <goal>nar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>${maven-assembly-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${maven-checkstyle-plugin.version}</version> |
| <dependencies> |
| <dependency> |
| <groupId>com.puppycrawl.tools</groupId> |
| <artifactId>checkstyle</artifactId> |
| <version>${puppycrawl.checkstyle.version}</version> |
| </dependency> |
| </dependencies> |
| <configuration> |
| <configLocation>${pulsar.basedir}/buildtools/src/main/resources/pulsar/checkstyle.xml</configLocation> |
| <suppressionsLocation>${pulsar.basedir}/buildtools/src/main/resources/pulsar/suppressions.xml</suppressionsLocation> |
| <includeTestSourceDirectory>true</includeTestSourceDirectory> |
| <encoding>UTF-8</encoding> |
| <excludes>**/proto/*</excludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>pl.project13.maven</groupId> |
| <artifactId>git-commit-id-plugin</artifactId> |
| <version>${git-commit-id-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs-maven-plugin</artifactId> |
| <version>${spotbugs-maven-plugin.version}</version> |
| <dependencies> |
| <dependency> |
| <groupId>com.github.spotbugs</groupId> |
| <artifactId>spotbugs</artifactId> |
| <version>${spotbugs.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>properties-maven-plugin</artifactId> |
| <version>${properties-maven-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>io.fabric8</groupId> |
| <artifactId>docker-maven-plugin</artifactId> |
| <version>${docker-maven.version}</version> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| <extensions> |
| <extension> |
| <groupId>org.apache.maven.wagon</groupId> |
| <artifactId>wagon-ssh-external</artifactId> |
| <version>${wagon-ssh-external.version}</version> |
| </extension> |
| <extension> |
| <groupId>kr.motd.maven</groupId> |
| <artifactId>os-maven-plugin</artifactId> |
| <version>${os-maven-plugin.version}</version> |
| </extension> |
| </extensions> |
| </build> |
| |
| <profiles> |
| <profile> |
| <!-- used for running integration tests on Java 8 --> |
| <id>integration-test-java8</id> |
| <activation> |
| <jdk>1.8</jdk> |
| </activation> |
| <properties> |
| <test.additional.args/> |
| <maven.compiler.source>8</maven.compiler.source> |
| <maven.compiler.target>8</maven.compiler.target> |
| <pulsar.broker.compiler.release/> |
| <pulsar.client.compiler.release/> |
| </properties> |
| </profile> |
| <profile> |
| <id>coverage</id> |
| <properties> |
| <testJacocoAgentArgument>@{jacoco.agent.argument}</testJacocoAgentArgument> |
| <surefire.shutdown>exit</surefire.shutdown> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>${jacoco-maven-plugin.version}</version> |
| <configuration> |
| <propertyName>jacoco.agent.argument</propertyName> |
| </configuration> |
| <executions> |
| <execution> |
| <id>prepare-agent</id> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| <configuration> |
| <!-- use unique jacoco exec files for every forked test process --> |
| <destFile>${project.build.directory}/jacoco_${maven.build.timestamp}_${surefire.forkNumber}.exec</destFile> |
| <append>true</append> |
| <jmx>true</jmx> |
| <includes> |
| <include>org.apache.pulsar.*</include> |
| <include>org.apache.bookkeeper.mledger.*</include> |
| </includes> |
| <excludes> |
| <exclude>*.proto.*</exclude> |
| <exclude>*.shade.*</exclude> |
| <exclude>*.shaded.*</exclude> |
| </excludes> |
| </configuration> |
| </execution> |
| <execution> |
| <id>report</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>report</goal> |
| </goals> |
| <configuration> |
| <excludes> |
| <exclude>META-INF/**</exclude> |
| </excludes> |
| <skip>${jacoco.report.skip}</skip> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| <reporting> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <configuration> |
| <configLocation>${pulsar.basedir}/buildtools/src/main/resources/pulsar/checkstyle.xml</configLocation> |
| <suppressionsLocation>${pulsar.basedir}/buildtools/src/main/resources/pulsar/suppressions.xml</suppressionsLocation> |
| <encoding>UTF-8</encoding> |
| <excludes>**/proto/*</excludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <configuration> |
| <doclint>none</doclint> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <reportSets> |
| <reportSet> |
| <reports> |
| <report>report</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| </plugins> |
| </reporting> |
| </profile> |
| <profile> |
| <id>docker</id> |
| <modules> |
| <module>docker</module> |
| <module>tests</module> |
| </modules> |
| </profile> |
| |
| <profile> |
| <!-- Checks style and licensing requirements. This is a good |
| idea to run for contributions and for the release process. While it would |
| be nice to run always these plugins can considerably slow the build and have |
| proven to create unstable builds in our multi-module project and when building |
| using multiple threads. The stability issues seen with Checkstyle in multi-module |
| builds include false-positives and false negatives. --> |
| <id>contrib-check</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| <phase>verify</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>check-style</id> |
| <phase>verify</phase> |
| <configuration> |
| <configLocation>${pulsar.basedir}/buildtools/src/main/resources/pulsar/checkstyle.xml</configLocation> |
| <suppressionsLocation>${pulsar.basedir}/buildtools/src/main/resources/pulsar/suppressions.xml</suppressionsLocation> |
| <encoding>UTF-8</encoding> |
| <excludes>**/proto/*</excludes> |
| </configuration> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| |
| <profile> |
| <id>windows</id> |
| <activation> |
| <os> |
| <family>Windows</family> |
| </os> |
| </activation> |
| <properties> |
| <rename.netty.native.libs>rename-netty-native-libs.cmd</rename.netty.native.libs> |
| </properties> |
| |
| </profile> |
| <!-- Primary Module profile --> |
| <profile> |
| <id>main</id> |
| <activation> |
| <!-- always activate this profile by default. Use "-main" or "!main" in the "-P" parameter to exclude it --> |
| <!-- for example use "-Pcore-modules,-main" to activate the core-modules profile --> |
| <property> |
| <name>disableMainProfile</name> |
| <!-- always active unless true is passed as a value --> |
| <value>!true</value> |
| </property> |
| </activation> |
| <modules> |
| <module>buildtools</module> |
| <module>testmocks</module> |
| <module>managed-ledger</module> |
| <module>tiered-storage</module> |
| <module>pulsar-common</module> |
| <module>pulsar-broker-common</module> |
| <module>pulsar-broker</module> |
| <module>pulsar-cli-utils</module> |
| <module>pulsar-client-api</module> |
| <module>pulsar-client</module> |
| <module>pulsar-client-shaded</module> |
| <module>pulsar-client-1x-base</module> |
| <module>pulsar-client-admin-api</module> |
| <module>pulsar-client-admin</module> |
| <module>pulsar-client-admin-shaded</module> |
| <module>pulsar-client-tools-api</module> |
| <module>pulsar-client-tools</module> |
| <module>pulsar-client-tools-customcommand-example</module> |
| <module>pulsar-client-tools-test</module> |
| <module>pulsar-client-all</module> |
| <module>pulsar-docs-tools</module> |
| <module>pulsar-websocket</module> |
| <module>pulsar-proxy</module> |
| <module>pulsar-testclient</module> |
| <module>pulsar-broker-auth-athenz</module> |
| <module>pulsar-client-auth-athenz</module> |
| <module>pulsar-sql</module> |
| <module>pulsar-broker-auth-oidc</module> |
| <module>pulsar-broker-auth-sasl</module> |
| <module>pulsar-client-auth-sasl</module> |
| <module>pulsar-config-validation</module> |
| |
| <module>structured-event-log</module> |
| |
| <!-- transaction related modules --> |
| <module>pulsar-transaction</module> |
| |
| <!-- functions-related modules --> |
| <module>pulsar-functions</module> |
| |
| <!-- connector-related modules --> |
| <module>pulsar-io</module> |
| |
| <!-- Bouncy Castle Provider loaders--> |
| <module>bouncy-castle</module> |
| |
| <module>pulsar-client-messagecrypto-bc</module> |
| |
| <module>pulsar-metadata</module> |
| <module>jclouds-shaded</module> |
| |
| <!-- package management releated modules (begin) --> |
| <module>pulsar-package-management</module> |
| <!-- package management releated modules (end) --> |
| |
| <!-- all these 3 modules should be put at the end in this exact sequence --> |
| <module>distribution</module> |
| <module>docker</module> |
| <module>tests</module> |
| </modules> |
| </profile> |
| |
| <!-- core profile focused of pulsar java modules --> |
| <profile> |
| <id>core-modules</id> |
| <properties> |
| <skipSourceReleaseAssembly>true</skipSourceReleaseAssembly> |
| </properties> |
| <modules> |
| <module>buildtools</module> |
| <module>testmocks</module> |
| <module>managed-ledger</module> |
| <module>pulsar-common</module> |
| <module>pulsar-broker-common</module> |
| <module>pulsar-broker</module> |
| <module>pulsar-cli-utils</module> |
| <module>pulsar-client-api</module> |
| <module>pulsar-client</module> |
| <module>pulsar-client-admin-api</module> |
| <module>pulsar-client-admin</module> |
| <module>pulsar-client-tools-api</module> |
| <module>pulsar-client-tools</module> |
| <module>pulsar-client-tools-customcommand-example</module> |
| <module>pulsar-client-tools-test</module> |
| <module>pulsar-docs-tools</module> |
| <module>pulsar-websocket</module> |
| <module>pulsar-proxy</module> |
| <module>pulsar-testclient</module> |
| <module>pulsar-broker-auth-oidc</module> |
| <module>pulsar-broker-auth-sasl</module> |
| <module>pulsar-client-auth-sasl</module> |
| <module>pulsar-config-validation</module> |
| |
| <!-- transaction related modules --> |
| <module>pulsar-transaction</module> |
| |
| <!-- functions-related modules --> |
| <module>pulsar-functions</module> |
| |
| <!-- connector-related modules --> |
| <module>pulsar-io</module> |
| |
| <!-- Bouncy Castle Provider loaders--> |
| <module>bouncy-castle</module> |
| |
| <module>pulsar-client-messagecrypto-bc</module> |
| |
| <!-- all these modules should be put at the end in this exact sequence --> |
| <module>distribution</module> |
| <module>pulsar-metadata</module> |
| |
| <!-- package management releated modules (begin) --> |
| <module>pulsar-package-management</module> |
| <!-- package management releated modules (end) --> |
| </modules> |
| </profile> |
| |
| <!-- |
| Configure Google Error Prone static code analyser, http://errorprone.info |
| |
| usage: |
| activate profile "errorprone" |
| |
| It is required to add "lombok.addJavaxGeneratedAnnotation = true" to lombok.config |
| temporarily before running the analysis. |
| |
| usage example: |
| echo lombok.addJavaxGeneratedAnnotation=true >> lombok.config |
| mvn -Perrorprone,main compile |
| |
| Revisiting warnings and errors is possible in IntelliJ after activating |
| errorprone and main in "Maven->Profiles" and choosing |
| "Build->Rebuild Project" |
| Compiling all Pulsar projects in IntelliJ requires some manual tweaks to get the |
| shaded projects to pass compilation. In some cases, it's better to mark the project |
| ignored in IntelliJ by right clicking the project in IntelliJ's maven view and |
| choosing "Ignore Projects". After "Reload All Maven Projects" and a rebuild, it might |
| be possible to proceed compiling the remaining projects. |
| --> |
| <profile> |
| <id>errorprone</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <configuration> |
| <fork>true</fork> |
| <meminitial>128m</meminitial> |
| <maxmem>1024m</maxmem> |
| <optimize>false</optimize> |
| <compilerArgs combine.children="append"> |
| <arg>-XDcompilePolicy=simple</arg> |
| <arg>-Xlint:-options</arg> |
| <!-- configure Error Prone . Disable some checks that crash the compiler or are annoying --> |
| <!-- the following argument must be kept on one line when building with JDK8 --> |
| <arg>-Xplugin:ErrorProne -XepExcludedPaths:.*/target/generated-sources/.* -XepDisableWarningsInGeneratedCode -Xep:UnusedVariable:OFF -Xep:FallThrough:OFF -Xep:OverrideThrowableToString:OFF -Xep:UnusedMethod:OFF -Xep:StringSplitter:OFF -Xep:CanonicalDuration:OFF -Xep:Slf4jDoNotLogMessageOfExceptionExplicitly:WARN -Xep:Slf4jSignOnlyFormat:WARN -Xep:Slf4jFormatShouldBeConst:WARN -Xep:Slf4jLoggerShouldBePrivate:WARN -Xep:Slf4jLoggerShouldBeNonStatic:OFF</arg> |
| </compilerArgs> |
| <annotationProcessorPaths combine.children="append"> |
| <path> |
| <groupId>com.google.errorprone</groupId> |
| <artifactId>error_prone_core</artifactId> |
| <version>${errorprone.version}</version> |
| </path> |
| <path> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-errorprone</artifactId> |
| <version>${mockito.version}</version> |
| </path> |
| <!-- add https://github.com/KengoTODA/errorprone-slf4j Error Prone plugin --> |
| <!-- detects slf4j misusage. --> |
| <path> |
| <groupId>jp.skypencil.errorprone.slf4j</groupId> |
| <artifactId>errorprone-slf4j</artifactId> |
| <version>${errorprone-slf4j.version}</version> |
| </path> |
| </annotationProcessorPaths> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>integrationTests</id> |
| <modules> |
| <module>tests</module> |
| </modules> |
| </profile> |
| <profile> |
| <id>skip-all</id> |
| <properties> |
| <maven.main.skip>true</maven.main.skip> |
| <maven.test.skip>true</maven.test.skip> |
| <skipSourceReleaseAssembly>true</skipSourceReleaseAssembly> |
| <skipBuildDistribution>true</skipBuildDistribution> |
| <spotbugs.skip>true</spotbugs.skip> |
| <license.skip>true</license.skip> |
| <rat.skip>true</rat.skip> |
| <assembly.skipAssembly>true</assembly.skipAssembly> |
| <shadePluginPhase>none</shadePluginPhase> |
| <narPluginPhase>none</narPluginPhase> |
| <skipDocker>true</skipDocker> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>default-testCompile</id> |
| <goals> |
| <goal>testCompile</goal> |
| </goals> |
| <phase>none</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>default-test</id> |
| <goals> |
| <goal>test</goal> |
| </goals> |
| <phase>none</phase> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>owasp-dependency-check</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.owasp</groupId> |
| <artifactId>dependency-check-maven</artifactId> |
| <version>${dependency-check-maven.version}</version> |
| <configuration> |
| <suppressionFiles> |
| <suppressionFile>${pulsar.basedir}/src/owasp-dependency-check-false-positives.xml</suppressionFile> |
| <suppressionFile>${pulsar.basedir}/src/owasp-dependency-check-suppressions.xml</suppressionFile> |
| </suppressionFiles> |
| <failBuildOnCVSS>7</failBuildOnCVSS> |
| <msbuildAnalyzerEnabled>false</msbuildAnalyzerEnabled> |
| <nodeAnalyzerEnabled>false</nodeAnalyzerEnabled> |
| <yarnAuditAnalyzerEnabled>false</yarnAuditAnalyzerEnabled> |
| <pyDistributionAnalyzerEnabled>false</pyDistributionAnalyzerEnabled> |
| <pyPackageAnalyzerEnabled>false</pyPackageAnalyzerEnabled> |
| <pipAnalyzerEnabled>false</pipAnalyzerEnabled> |
| <pipfileAnalyzerEnabled>false</pipfileAnalyzerEnabled> |
| <retireJsAnalyzerEnabled>false</retireJsAnalyzerEnabled> |
| <msbuildAnalyzerEnabled>false</msbuildAnalyzerEnabled> |
| <mixAuditAnalyzerEnabled>false</mixAuditAnalyzerEnabled> |
| <nugetconfAnalyzerEnabled>false</nugetconfAnalyzerEnabled> |
| <assemblyAnalyzerEnabled>false</assemblyAnalyzerEnabled> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <goal>aggregate</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| <reporting> |
| <plugins> |
| <plugin> |
| <groupId>org.owasp</groupId> |
| <artifactId>dependency-check-maven</artifactId> |
| <version>${dependency-check-maven.version}</version> |
| <reportSets> |
| <reportSet> |
| <reports> |
| <report>aggregate</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| </plugins> |
| </reporting> |
| </profile> |
| |
| <profile> |
| <id>pulsar-io-tests</id> |
| <modules> |
| <module>pulsar-io</module> |
| </modules> |
| </profile> |
| |
| <profile> |
| <id>pulsar-io-elastic-tests</id> |
| <modules> |
| <module>pulsar-io</module> |
| </modules> |
| </profile> |
| |
| <profile> |
| <id>pulsar-io-kafka-connect-tests</id> |
| <modules> |
| <module>pulsar-io</module> |
| </modules> |
| </profile> |
| |
| <profile> |
| <id>pulsar-sql-tests</id> |
| <modules> |
| <module>pulsar-sql</module> |
| </modules> |
| </profile> |
| </profiles> |
| |
| <repositories> |
| <repository> |
| <id>central</id> |
| <layout>default</layout> |
| <url>https://repo1.maven.org/maven2</url> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| </repository> |
| <repository> |
| <id>confluent</id> |
| <url>https://packages.confluent.io/maven/</url> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| </repository> |
| <repository> |
| <id>maven.restlet.org</id> |
| <name>maven.restlet.org</name> |
| <url>https://maven.restlet.talend.com</url> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| </repository> |
| </repositories> |
| </project> |