<?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>23</version>
  </parent>

  <groupId>org.apache.pulsar</groupId>
  <artifactId>pulsar</artifactId>

  <version>2.8.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>http://www.apache.org/</url>
  </organization>
  <inceptionYear>2017</inceptionYear>

  <developers>
    <developer>
      <organization>Apache Pulsar developers</organization>
      <organizationUrl>http://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>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>

    <!--config keys to congiure test selection -->
    <include>*</include>
    <exclude/>
    <groups/>
    <excludedGroups/>

    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <redirectTestOutputToFile>true</redirectTestOutputToFile>
    <test.additional.args></test.additional.args>
    <testReuseFork>true</testReuseFork>
    <testForkCount>4</testForkCount>
    <testRealAWS>false</testRealAWS>
    <testRetryCount>1</testRetryCount>
    <docker.organization>apachepulsar</docker.organization>
    <skipSourceReleaseAssembly>false</skipSourceReleaseAssembly>
    <skipBuildDistribution>false</skipBuildDistribution>

    <!-- apache commons -->
    <commons-compress.version>1.19</commons-compress.version>

    <bookkeeper.version>4.13.0</bookkeeper.version>
    <zookeeper.version>3.6.2</zookeeper.version>
    <snappy.version>1.1.7</snappy.version> <!-- ZooKeeper server -->
    <dropwizardmetrics.version>3.2.5</dropwizardmetrics.version> <!-- ZooKeeper server -->
    <curator.version>5.1.0</curator.version>
    <netty.version>4.1.60.Final</netty.version>
    <netty-tc-native.version>2.0.36.Final</netty-tc-native.version>
    <jetty.version>9.4.35.v20201120</jetty.version>
    <jersey.version>2.31</jersey.version>
    <athenz.version>1.10.9</athenz.version>
    <prometheus.version>0.5.0</prometheus.version>
    <aspectj.version>1.9.2</aspectj.version>
    <vertx.version>3.5.3</vertx.version>
    <rocksdb.version>6.10.2</rocksdb.version>
    <slf4j.version>1.7.25</slf4j.version>
    <commons.collections.version>3.2.2</commons.collections.version>
    <log4j2.version>2.14.0</log4j2.version>
    <bouncycastle.version>1.68</bouncycastle.version>
    <bouncycastlefips.version>1.0.2</bouncycastlefips.version>
    <jackson.version>2.11.1</jackson.version>
    <jackson.databind.version>2.11.1</jackson.databind.version>
    <reflections.version>0.9.11</reflections.version>
    <swagger.version>1.6.2</swagger.version>
    <puppycrawl.checkstyle.version>8.37</puppycrawl.checkstyle.version>
    <dockerfile-maven.version>1.4.13</dockerfile-maven.version>
    <typetools.version>0.5.0</typetools.version>
    <protobuf3.version>3.11.4</protobuf3.version>
    <protoc3.version>${protobuf3.version}</protoc3.version>
    <grpc.version>1.33.0</grpc.version>
    <perfmark.version>0.19.0</perfmark.version>
    <protoc-gen-grpc-java.version>${grpc.version}</protoc-gen-grpc-java.version>
    <gson.version>2.8.6</gson.version>
    <sketches.version>0.8.3</sketches.version>
    <hbc-core.version>2.2.0</hbc-core.version>
    <cassandra-driver-core.version>3.6.0</cassandra-driver-core.version>
    <aerospike-client.version>4.4.8</aerospike-client.version>
    <kafka-client.version>2.3.0</kafka-client.version>
    <rabbitmq-client.version>5.1.1</rabbitmq-client.version>
    <aws-sdk.version>1.11.774</aws-sdk.version>
    <avro.version>1.10.2</avro.version>
    <joda.version>2.10.1</joda.version>
    <jclouds.version>2.2.1</jclouds.version>
    <sqlite-jdbc.version>3.8.11.2</sqlite-jdbc.version>
    <mysql-jdbc.version>8.0.11</mysql-jdbc.version>
    <postgresql-jdbc.version>42.2.12</postgresql-jdbc.version>
    <clickhouse-jdbc.version>0.2.4</clickhouse-jdbc.version>
    <mariadb-jdbc.version>2.6.0</mariadb-jdbc.version>
    <hdfs-offload-version3>3.3.0</hdfs-offload-version3>
    <elasticsearch.version>7.9.1</elasticsearch.version>
    <presto.version>332</presto.version>
    <scala.binary.version>2.11</scala.binary.version>
    <scala-library.version>2.11.12</scala-library.version>
    <debezium.version>1.0.0.Final</debezium.version>
    <jsonwebtoken.version>0.11.1</jsonwebtoken.version>
    <opencensus.version>0.18.0</opencensus.version>
    <hbase.version>2.3.0</hbase.version>
    <guava.version>30.1-jre</guava.version>
    <jcip.version>1.0</jcip.version>
    <prometheus-jmx.version>0.14.0</prometheus-jmx.version>
    <confluent.version>5.3.2</confluent.version>
    <kafka.confluent.schemaregistryclient.version>5.3.0</kafka.confluent.schemaregistryclient.version>
    <kafka.confluent.avroserializer.version>5.3.0</kafka.confluent.avroserializer.version>
    <kafka-avro-convert-jackson.version>1.9.13</kafka-avro-convert-jackson.version>
    <aircompressor.version>0.16</aircompressor.version>
    <asynchttpclient.version>2.12.1</asynchttpclient.version>
    <jcommander.version>1.78</jcommander.version>
    <commons-lang3.version>3.11</commons-lang3.version>
    <commons-configuration.version>1.10</commons-configuration.version>
    <commons-io.version>2.5</commons-io.version>
    <commons-codec.version>1.10</commons-codec.version>
    <javax.ws.rs-api.version>2.1</javax.ws.rs-api.version>
    <log4j.version>1.2.17</log4j.version>
    <hdrHistogram.version>2.1.9</hdrHistogram.version>
    <javax.servlet-api>3.1.0</javax.servlet-api>
    <caffeine.version>2.6.2</caffeine.version>
    <java-semver.version>0.9.0</java-semver.version>
    <hppc.version>0.7.3</hppc.version>
    <spark-streaming_2.10.version>2.1.0</spark-streaming_2.10.version>
    <assertj-core.version>3.18.1</assertj-core.version>
    <lombok.version>1.18.18</lombok.version>
    <javax.annotation-api.version>1.2</javax.annotation-api.version>
    <jaxb-api>2.3.1</jaxb-api>
    <javax.activation.version>1.2.0</javax.activation.version>
    <jna.version>4.2.0</jna.version>
    <kubernetesclient.version>10.0.0</kubernetesclient.version>
    <sundr.version>0.21.0</sundr.version>
    <nsq-client.version>1.0</nsq-client.version>
    <cron-utils.version>9.1.3</cron-utils.version>
    <spring-context.version>5.3.1</spring-context.version>
    <docker-java.version>3.2.7</docker-java.version>
    <apache-http-client.version>4.5.13</apache-http-client.version>

    <!-- test dependencies -->
    <cassandra.version>3.6.0</cassandra.version>
    <disruptor.version>3.4.0</disruptor.version>
    <testcontainers.version>1.15.1</testcontainers.version>
    <kerby.version>1.1.1</kerby.version>
    <testng.version>7.3.0</testng.version>
    <mockito.version>3.8.0</mockito.version>
    <powermock.version>2.0.9</powermock.version>
    <javassist.version>3.25.0-GA</javassist.version>
    <failsafe.version>2.3.1</failsafe.version>
    <skyscreamer.version>1.5.0</skyscreamer.version>
    <confluent.version>5.2.2</confluent.version>
    <objenesis.version>3.1</objenesis.version>
    <awaitility.version>4.0.3</awaitility.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>
    <aspectj-maven-plugin.version>1.11.1</aspectj-maven-plugin.version>
    <license-maven-plugin.version>4.0.rc2</license-maven-plugin.version>
    <directory-maven-plugin.version>0.3.1</directory-maven-plugin.version>
    <maven-enforcer-plugin.version>3.0.0-M3</maven-enforcer-plugin.version>
    <!-- surefire.version is defined in apache parent pom -->
    <!-- it is used for surefire, failsafe and surefire-report plugins -->
    <!-- do not upgrade surefire.version to 3.0.0-M5 since it runs slowly and breaks tests. -->
    <surefire.version>3.0.0-M3</surefire.version>
    <maven-assembly-plugin.version>3.3.0</maven-assembly-plugin.version>
    <maven-dependency-plugin.version>3.1.2</maven-dependency-plugin.version>
    <maven-shade-plugin>3.2.4</maven-shade-plugin>
    <maven-antrun-plugin.version>3.0.0</maven-antrun-plugin.version>
    <nifi-nar-maven-plugin.version>1.2.0</nifi-nar-maven-plugin.version>
    <maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version>
    <git-commit-id-plugin.version>4.0.2</git-commit-id-plugin.version>
    <wagon-ssh-external.version>3.4.3</wagon-ssh-external.version>
    <os-maven-plugin.version>1.4.1.Final</os-maven-plugin.version>
    <jacoco-maven-plugin.version>0.8.6</jacoco-maven-plugin.version>
    <spotbugs-maven-plugin.version>4.2.2</spotbugs-maven-plugin.version>
    <spotbugs.version>4.2.2</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>
    <lightproto-maven-plugin.version>0.2</lightproto-maven-plugin.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.asynchttpclient</groupId>
        <artifactId>async-http-client</artifactId>
        <version>${asynchttpclient.version}</version>
        <exclusions>
          <exclusion>
            <groupId>io.netty</groupId>
            <artifactId>*</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.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.powermock</groupId>
        <artifactId>powermock-api-mockito2</artifactId>
        <version>${powermock.version}</version>
      </dependency>

      <dependency>
        <groupId>org.powermock</groupId>
        <artifactId>powermock-module-testng</artifactId>
        <version>${powermock.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>${zookeeper.version}</version>
        <exclusions>
          <exclusion>
            <artifactId>slf4j-log4j12</artifactId>
            <groupId>org.slf4j</groupId>
          </exclusion>
          <exclusion>
            <artifactId>log4j</artifactId>
            <groupId>log4j</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper-jute</artifactId>
        <version>${zookeeper.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>
            <artifactId>slf4j-log4j12</artifactId>
            <groupId>org.slf4j</groupId>
          </exclusion>
          <exclusion>
            <artifactId>log4j</artifactId>
            <groupId>log4j</groupId>
          </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.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>
        </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>
        </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-servlet</artifactId>
        <version>${jetty.version}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-servlets</artifactId>
        <version>${jetty.version}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-proxy</artifactId>
        <version>${jetty.version}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-util</artifactId>
        <version>${jetty.version}</version>
      </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</groupId>
        <artifactId>netty-tcnative-boringssl-static</artifactId>
        <version>${netty-tc-native.version}</version>
      </dependency>

      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-haproxy</artifactId>
        <version>${netty.version}</version>
      </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>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.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>jul-to-slf4j</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>
      </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>
      </dependency>

      <dependency>
        <groupId>com.fasterxml.jackson</groupId>
        <artifactId>jackson-bom</artifactId>
        <version>${jackson.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <dependency>
        <artifactId>log4j</artifactId>
        <groupId>log4j</groupId>
        <version>${log4j.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.sun.jmx</groupId>
            <artifactId>jmxri</artifactId>
          </exclusion>
        </exclusions>
      </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>com.yahoo.athenz</groupId>
        <artifactId>athenz-zts-java-client</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.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>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>org.aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>${aspectj.version}</version>
      </dependency>

      <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>${aspectj.version}</version>
      </dependency>

      <dependency>
        <groupId>net.jodah</groupId>
        <artifactId>typetools</artifactId>
        <version>${typetools.version}</version>
      </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>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-core</artifactId>
        <version>${grpc.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>io.grpc</groupId>
        <artifactId>grpc-stub</artifactId>
        <version>${grpc.version}</version>
      </dependency>

      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-protobuf-lite</artifactId>
        <version>${grpc.version}</version>
      </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>commons-collections</groupId>
        <artifactId>commons-collections</artifactId>
        <version>${commons.collections.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</artifactId>
        <version>${testcontainers.version}</version>
      </dependency>
      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>kafka</artifactId>
        <version>${testcontainers.version}</version>
      </dependency>
      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>mysql</artifactId>
        <version>${testcontainers.version}</version>
      </dependency>
      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>postgresql</artifactId>
        <version>${testcontainers.version}</version>
      </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>com.sun.activation</groupId>
        <artifactId>javax.activation</artifactId>
        <version>${javax.activation.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-grpc-metrics</artifactId>
        <version>${opencensus.version}</version>
      </dependency>

      <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>elasticsearch-rest-high-level-client</artifactId>
        <version>${elasticsearch.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>com.github.spotbugs</groupId>
        <artifactId>spotbugs-annotations</artifactId>
        <version>${spotbugs.version}</version>
        <scope>provided</scope>
        <optional>true</optional>
      </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>org.powermock</groupId>
      <artifactId>powermock-api-mockito2</artifactId>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-module-testng</artifactId>
      <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>
      <!-- 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>
      </exclusions>
    </dependency>
  </dependencies>

  <build>
    <finalName>${project.artifactId}</finalName>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <dependencies>
          <dependency>
            <groupId>org.apache.pulsar</groupId>
            <artifactId>buildtools</artifactId>
            <version>${project.version}</version>
          </dependency>
        </dependencies>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <encoding>UTF-8</encoding>
          <showDeprecation>true</showDeprecation>
          <showWarnings>true</showWarnings>
          <optimize>true</optimize>
          <!-- 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>
          </compilerArgs>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <argLine> -Xmx1G -XX:+UseG1GC
            -Dpulsar.allocator.pooled=false
            -Dpulsar.allocator.leak_detection=Advanced
            -Dpulsar.allocator.exit_on_oom=false
            ${test.additional.args}
          </argLine>
          <reuseForks>${testReuseFork}</reuseForks>
          <forkCount>${testForkCount}</forkCount>
          <shutdown>kill</shutdown>
          <redirectTestOutputToFile>${redirectTestOutputToFile}</redirectTestOutputToFile>
          <trimStackTrace>false</trimStackTrace>
          <properties>
            <property>
              <name>testRealAWS</name>
              <value>${testRealAWS}</value>
            </property>
            <property>
              <name>testRetryCount</name>
              <value>${testRetryCount}</value>
            </property>
            <property>
              <name>listener</name>
              <value>org.apache.pulsar.tests.PulsarTestListener,org.apache.pulsar.tests.AnnotationListener</value>
            </property>
          </properties>
        </configuration>
      </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>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.conf</exclude>
                <exclude>data/**</exclude>
                <exclude>logs/**</exclude>
                <exclude>**/circe/**</exclude>
                <exclude>pulsar-broker/src/test/resources/authentication/basic/.htpasswd</exclude>
                <exclude>pulsar-client-cpp/lib/checksum/int_types.h</exclude>
                <exclude>pulsar-client-cpp/lib/checksum/gf2.hpp</exclude>
                <exclude>pulsar-client-cpp/lib/checksum/crc32c_sse42.cc</exclude>
                <exclude>pulsar-client-cpp/lib/checksum/crc32c_sse42.h</exclude>
                <exclude>pulsar-client-cpp/lib/checksum/crc32c_sw.cc</exclude>
                <exclude>pulsar-client-cpp/lib/lz4/lz4.*</exclude>
                <exclude>pulsar-client-cpp/lib/PulsarApi.pb.*</exclude>
                <exclude>pulsar-client-cpp/CMakeFiles/**</exclude>
                <exclude>pulsar-client-cpp/**/Makefile</exclude>
                <exclude>pulsar-client-cpp/**/cmake_install.cmake</exclude>
                <exclude>**/CMakeFiles/**</exclude>
                <exclude>**/django/stats/migrations/*.py</exclude>
                <exclude>site2/**</exclude>
                <exclude>generated-site/**</exclude>
                <exclude>.github/*.md</exclude>
                <exclude>**/.idea/**</exclude>
                <exclude>**/generated/**</exclude>
                <exclude>**/zk-3.5-test-data/*</exclude>
              </excludes>
            </licenseSet>
          </licenseSets>
          <mapping>
            <java>JAVADOC_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>
            <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>pulsar-client-cpp/pkg/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>

            <!-- LZ4 code is under BSD 2-clause  -->
            <exclude>pulsar-client-cpp/lib/lz4/lz4.*</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 file is using ZLib license -->
            <exclude>pulsar-client-cpp/lib/checksum/crc32c_sw.cc</exclude>

            <!-- This file is generated by c++ client -->
            <exclude>pulsar-client-cpp/generated/**</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.prestosql.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.conf</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>**/CMakeFiles/**</exclude>
            <exclude>**/CMakeCache.txt</exclude>
            <exclude>**/cmake_install.cmake</exclude>
            <exclude>pulsar-client-cpp/**/Makefile</exclude>
            <exclude>pulsar-client-cpp/tests/main</exclude>
            <exclude>pulsar-client-cpp/examples/SampleAsyncProducer</exclude>
            <exclude>pulsar-client-cpp/examples/SampleConsumer</exclude>
            <exclude>pulsar-client-cpp/examples/SampleConsumerListener</exclude>
            <exclude>pulsar-client-cpp/examples/SampleProducer</exclude>
            <exclude>pulsar-client-cpp/perf/perfProducer</exclude>
            <exclude>pulsar-client-cpp/perf/perfConsumer</exclude>
            <exclude>**/python/dist/**</exclude>
            <exclude>**/pulsar-client-cpp/pkg/rpm/RPMS/**</exclude>
            <exclude>**/pulsar-client-cpp/pkg/rpm/SOURCES/**</exclude>
            <exclude>**/pulsar-client-cpp/pkg/deb/BUILD/**</exclude>
            <exclude>**/python/wheelhouse/**</exclude>
            <exclude>**/python/MANIFEST</exclude>
            <exclude>**/*.egg-info/**</exclude>
            <exclude>**/*.log</exclude>
            <exclude>**/build/**</exclude>
            <exclude>**/file:/**</exclude>
            <exclude>**/SecurityAuth.audit*</exclude>
            <exclude>**/site2/**</exclude>
            <exclude>**/.idea/**</exclude>
            <exclude>**/*.a</exclude>
            <exclude>**/*.so</exclude>
            <exclude>**/*.so.*</exclude>
            <exclude>**/*.dylib</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>[1.8.0,)</version>
                  </requireJavaVersion>
                  <requireMavenVersion>
                    <version>[3.3.9,)</version>
                  </requireMavenVersion>
                </rules>
              </configuration>
            </execution>
        </executions>
      </plugin>
      <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>${maven-assembly-plugin.version}</version>
          <inherited>false</inherited>
          <dependencies>
              <dependency>
                  <groupId>org.apache.apache.resources</groupId>
                  <artifactId>apache-source-release-assembly-descriptor</artifactId>
                  <version>1.0.6</version>
              </dependency>
          </dependencies>
          <executions>
              <execution>
                  <id>source-release-assembly-tar-gz</id>
                  <phase>generate-sources</phase>
                  <goals>
                      <goal>single</goal>
                  </goals>
                  <configuration>
                      <skipAssembly>${skipSourceReleaseAssembly}</skipAssembly>
                      <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
                      <descriptorRefs>
                          <!-- defined in Apache Parent Pom -->
                          <descriptorRef>${sourceReleaseAssemblyDescriptor}</descriptorRef>
                      </descriptorRefs>
                      <finalName>apache-pulsar-${project.version}-src</finalName>
                      <appendAssemblyId>false</appendAssemblyId>
                      <formats>
                          <format>tar.gz</format>
                      </formats>
                      <tarLongFileMode>posix</tarLongFileMode>
                  </configuration>
              </execution>
          </executions>
      </plugin>
    </plugins>

    <pluginManagement>
      <plugins>
        <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>
          </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>package</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>
            <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>
      </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>
      <id>jdk11-tests</id>
      <activation>
        <jdk>[11,)</jdk>
      </activation>
      <properties>
        <test.additional.args> --add-opens java.base/jdk.internal.loader=ALL-UNNAMED </test.additional.args>
      </properties>
    </profile>
    <profile>
      <id>coverage</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>${jacoco-maven-plugin.version}</version>
            <executions>
              <execution>
                <id>pre-unit-test</id>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
              </execution>
              <execution>
                <id>post-test</id>
                <phase>test</phase>
                <goals>
                  <goal>report</goal>
                </goals>
                <configuration>
                  <outputDirectory>target/report</outputDirectory>
                </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>

    <!-- Primary Module profile -->
    </profile>
    <profile>
      <id>main</id>
      <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>[8,)</jdk>
      </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-broker-shaded</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</module>
        <module>pulsar-client-tools-test</module>
        <module>pulsar-client-all</module>
        <module>pulsar-websocket</module>
        <module>pulsar-proxy</module>
        <module>pulsar-discovery-service</module>
        <module>pulsar-zookeeper-utils</module>
        <module>pulsar-testclient</module>
        <module>pulsar-broker-auth-athenz</module>
        <module>pulsar-client-auth-athenz</module>
        <module>pulsar-zookeeper</module>
        <module>pulsar-sql</module>
        <module>dashboard</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>

        <!-- kafka connect avro converter shaded, because version mismatch    -->
        <module>kafka-connect-avro-converter-shaded</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-client-api</module>
        <module>pulsar-client</module>
        <module>pulsar-client-admin-api</module>
        <module>pulsar-client-admin</module>
        <module>pulsar-client-tools</module>
        <module>pulsar-client-tools-test</module>
        <module>pulsar-websocket</module>
        <module>pulsar-proxy</module>
        <module>pulsar-discovery-service</module>
        <module>pulsar-zookeeper-utils</module>
        <module>pulsar-testclient</module>
        <module>pulsar-zookeeper</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

         consists of 3 maven profiles: errorprone, errorprone-jdk8 and errorprone-jdk11

         usage:
         activate profiles "errorprone" and either "errorprone-jdk8" or "errorprone-jdk11"
         depending on the JVM version

         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,errorprone-jdk11,main compile

         Revisiting warnings and errors is possible in IntelliJ after activating
         errorprone, errorprone-jdk11 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 ${errorprone.arguments.jdk11}</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>
              </annotationProcessorPaths>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <!-- running errorprone on JDK 8 requires special javac configuration -->
    <profile>
      <id>errorprone-jdk8</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
              <compilerArgs combine.children="append">
                <arg>
                  -J-Xbootclasspath/p:${settings.localRepository}/com/google/errorprone/javac/${errorprone.javac.version}/javac-${errorprone.javac.version}.jar</arg>
              </compilerArgs>
              <annotationProcessorPaths combine.children="append">
                <path>
                  <groupId>com.google.errorprone</groupId>
                  <artifactId>javac</artifactId>
                  <version>${errorprone.javac.version}</version>
                </path>
              </annotationProcessorPaths>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>errorprone-jdk11</id>
      <dependencies>
        <!-- required on JDK9+ when there is "lombok.addJavaxGeneratedAnnotation = true" in lombok.config -->
        <dependency>
          <groupId>javax.annotation</groupId>
          <artifactId>javax.annotation-api</artifactId>
        </dependency>
      </dependencies>
      <properties>
        <!-- pass the additional properties to -Xplugin:ErrorProne argument defined in errorprone profile -->
        <!-- change configuration of slf4j checks to be more permissive -->
        <errorprone.arguments.jdk11>-Xep:Slf4jDoNotLogMessageOfExceptionExplicitly:WARN -Xep:Slf4jSignOnlyFormat:WARN -Xep:Slf4jFormatShouldBeConst:WARN -Xep:Slf4jLoggerShouldBePrivate:WARN -Xep:Slf4jLoggerShouldBeNonStatic:OFF</errorprone.arguments.jdk11>
      </properties>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
              <annotationProcessorPaths combine.children="append">
                <!-- add https://github.com/KengoTODA/errorprone-slf4j Error Prone plugin -->
                <!-- detects slf4j misusage. Doesn't run on Java 8, so this is why it's in the errorprone-jdk11 profile -->
                <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>
  </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>
  </repositories>

</project>
