blob: 1f7daa78c927ef1942d151c002bf1ee2e601d1ca [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<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">
<groupId>com.baremaps</groupId>
<artifactId>baremaps</artifactId>
<name>baremaps</name>
<description>Baremaps</description>
<url>https://github.com/baremaps/baremaps</url>
<version>0.6.5</version>
<packaging>pom</packaging>
<modelVersion>4.0.0</modelVersion>
<organization>
<name>baremaps</name>
<url>https://www.baremaps.com/</url>
</organization>
<developers>
<developer>
<email>bchapuis@gmail.com</email>
<id>bchapuis</id>
<name>Bertil Chapuis</name>
</developer>
</developers>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0</url>
</license>
</licenses>
<scm>
<url>scm:git:git@github.com:baremaps/baremaps.git</url>
<connection>scm:git:git@github.com:baremaps/baremaps.git</connection>
<developerConnection>scm:git:git@github.com:baremaps/baremaps.git</developerConnection>
<tag>v0.6.5</tag>
</scm>
<distributionManagement>
<snapshotRepository>
<id>maven</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>maven</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<properties>
<!-- project -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<!-- libraries -->
<version.lib.caffeine>3.0.4</version.lib.caffeine>
<version.lib.commons-compress>1.21</version.lib.commons-compress>
<version.lib.guava>31.0.1-jre</version.lib.guava>
<version.lib.jersey>2.34</version.lib.jersey>
<version.lib.jts>1.18.2</version.lib.jts>
<version.lib.lmdb>0.8.1</version.lib.lmdb>
<version.lib.log4j>2.17.0</version.lib.log4j>
<version.lib.picocli>4.6.2</version.lib.picocli>
<version.lib.postgresql>42.3.1</version.lib.postgresql>
<version.lib.proj4j>1.1.4</version.lib.proj4j>
<version.lib.protobuf>3.19.1</version.lib.protobuf>
<version.lib.servicetalk>0.41.11</version.lib.servicetalk>
<version.lib.slf4j>1.7.32</version.lib.slf4j>
<version.lib.sqlite>3.36.0.3</version.lib.sqlite>
<version.lib.swagger>1.6.3</version.lib.swagger>
<version.lib.validation>2.0.1.Final</version.lib.validation>
<version.lib.jackson>2.13.0</version.lib.jackson>
<version.lib.jdbi>3.24.1</version.lib.jdbi>
<version.lib.awaitability>3.0.0</version.lib.awaitability>
<version.lib.jsqlparser>4.2</version.lib.jsqlparser>
<version.lib.rocksdb>6.22.1.1</version.lib.rocksdb>
<version.lib.swagger-parser>2.0.24</version.lib.swagger-parser>
<version.lib.jaxb-runtime>2.3.5</version.lib.jaxb-runtime>
<version.lib.activation>1.2.2</version.lib.activation>
<version.lib.servlet>3.1.0</version.lib.servlet>
<!-- testing -->
<version.lib.testng>7.4.0</version.lib.testng>
<version.lib.selenium>3.141.59</version.lib.selenium>
<version.lib.s3mock>2.2.3</version.lib.s3mock>
<version.lib.testcontainers>1.16.0</version.lib.testcontainers>
<version.lib.junit-vintage>5.7.2</version.lib.junit-vintage>
<version.lib.mockito>1.10.19</version.lib.mockito>
<version.lib.junit>5.7.1</version.lib.junit>
<!-- plugins -->
<version.plugin.compiler>3.8.1</version.plugin.compiler>
<version.plugin.jacoco>0.8.7</version.plugin.jacoco>
<version.plugin.surefire>2.22.2</version.plugin.surefire>
<version.plugin.surefire.provider.junit>1.3.2</version.plugin.surefire.provider.junit>
<!-- sonar -->
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
<sonar.organization>baremaps</sonar.organization>
<sonar.projectKey>baremaps_baremaps</sonar.projectKey>
<sonar.moduleKey>${project.groupId}:${project.artifactId}</sonar.moduleKey>
</properties>
<modules>
<module>baremaps-benchmarks</module>
<module>baremaps-cli</module>
<module>baremaps-blob</module>
<module>baremaps-blob-s3</module>
<module>baremaps-osm</module>
<module>baremaps-osm-lmdb</module>
<module>baremaps-osm-rocksdb</module>
<module>baremaps-osm-postgres</module>
<module>baremaps-stream</module>
<module>baremaps-server</module>
<module>baremaps-testing</module>
<module>baremaps-tile</module>
<module>baremaps-tile-mbtiles</module>
<module>baremaps-tile-postgres</module>
<module>baremaps-postgres</module>
</modules>
<profiles>
<profile>
<id>integration</id>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<version>${version.plugin.surefire}</version>
<configuration>
<excludes>none</excludes>
<excludedGroups>none</excludedGroups>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.3</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.11.2</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.8</version>
<extensions>true</extensions>
<configuration>
<serverId>maven</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>false</autoReleaseAfterClose>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<!-- Prevent `gpg` from using pinentry programs -->
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<detectJavaApiLink>false</detectJavaApiLink>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<build>
<sourceDirectory>src/main/java</sourceDirectory>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.0.0</version>
<inherited>false</inherited> <!-- only execute these in the parent -->
<executions>
<execution>
<id>git submodule update</id>
<phase>initialize</phase>
<configuration>
<executable>git</executable>
<arguments>
<argument>submodule</argument>
<argument>update</argument>
<argument>--init</argument>
<argument>--recursive</argument>
</arguments>
</configuration>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>jacoco-maven-plugin</artifactId>
<groupId>org.jacoco</groupId>
<version>${version.plugin.jacoco}</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<goals>
<goal>report</goal>
</goals>
<id>report</id>
<phase>test</phase>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<version>${version.plugin.surefire}</version>
<configuration>
<excludes>**/*IntegrationTest.java</excludes>
<excludedGroups>integration</excludedGroups>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<version>${version.plugin.surefire}</version>
</plugin>
<plugin>
<groupId>com.diffplug.spotless</groupId>
<artifactId>spotless-maven-plugin</artifactId>
<version>2.12.2</version>
<configuration>
<configLocation>google_checks.xml</configLocation>
<java>
<googleJavaFormat>
<version>1.8</version>
<style>GOOGLE</style>
</googleJavaFormat>
<removeUnusedImports />
<licenseHeader>
<file>${maven.multiModuleProjectDirectory}/LICENSE.header</file>
</licenseHeader>
</java>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>${version.plugin.surefire}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>3.1.1</version>
</plugin>
</plugins>
</reporting>
<dependencyManagement>
<dependencies>
<!-- Internal dependencies -->
<dependency>
<artifactId>baremaps-benchmarks</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-blob</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-blob-s3</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-cli</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-osm</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-osm-lmdb</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-osm-rocksdb</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-osm-postgres</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-tile</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-tile-mbtiles</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-tile-postgres</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-server</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-server-common</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-server-editor</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-server-ogcapi</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-server-studio</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-server-viewer</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-stream</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-testing</artifactId>
<groupId>com.baremaps</groupId>
<scope>test</scope>
<version>${project.parent.version}</version>
</dependency>
<dependency>
<artifactId>baremaps-postgres</artifactId>
<groupId>com.baremaps</groupId>
<version>${project.parent.version}</version>
</dependency>
<!-- External dependencies -->
<dependency>
<artifactId>guava</artifactId>
<groupId>com.google.guava</groupId>
<version>${version.lib.guava}</version>
</dependency>
<dependency>
<artifactId>picocli</artifactId>
<groupId>info.picocli</groupId>
<version>${version.lib.picocli}</version>
</dependency>
<dependency>
<artifactId>caffeine</artifactId>
<groupId>com.github.ben-manes.caffeine</groupId>
<version>${version.lib.caffeine}</version>
</dependency>
<dependency>
<artifactId>sqlite-jdbc</artifactId>
<groupId>org.xerial</groupId>
<version>${version.lib.sqlite}</version>
</dependency>
<dependency>
<artifactId>postgresql</artifactId>
<groupId>org.postgresql</groupId>
<version>${version.lib.postgresql}</version>
</dependency>
<dependency>
<artifactId>commons-dbcp2</artifactId>
<groupId>org.apache.commons</groupId>
<version>${version.lib.dbcp2}</version>
</dependency>
<dependency>
<artifactId>commons-compress</artifactId>
<groupId>org.apache.commons</groupId>
<version>${version.lib.commons-compress}</version>
</dependency>
<dependency>
<artifactId>jts-core</artifactId>
<groupId>org.locationtech.jts</groupId>
<version>${version.lib.jts}</version>
</dependency>
<dependency>
<artifactId>jts-io-common</artifactId>
<groupId>org.locationtech.jts.io</groupId>
<version>${version.lib.jts}</version>
</dependency>
<dependency>
<artifactId>proj4j</artifactId>
<groupId>org.locationtech.proj4j</groupId>
<version>${version.lib.proj4j}</version>
</dependency>
<dependency>
<artifactId>lmdbjava</artifactId>
<groupId>org.lmdbjava</groupId>
<version>${version.lib.lmdb}</version>
</dependency>
<dependency>
<groupId>org.rocksdb</groupId>
<artifactId>rocksdbjni</artifactId>
<version>${version.lib.rocksdb}</version>
</dependency>
<dependency>
<artifactId>protobuf-java</artifactId>
<groupId>com.google.protobuf</groupId>
<version>${version.lib.protobuf}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>s3</artifactId>
<version>2.16.62</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${version.lib.jackson}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${version.lib.jackson}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${version.lib.jackson}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jdk8</artifactId>
<version>${version.lib.jackson}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
<version>${version.lib.jackson}</version>
</dependency>
<dependency>
<groupId>io.servicetalk</groupId>
<artifactId>servicetalk-data-jackson</artifactId>
<version>${version.lib.servicetalk}</version>
</dependency>
<dependency>
<groupId>io.servicetalk</groupId>
<artifactId>servicetalk-data-jackson-jersey</artifactId>
<version>${version.lib.servicetalk}</version>
</dependency>
<dependency>
<groupId>io.servicetalk</groupId>
<artifactId>servicetalk-http-netty</artifactId>
<version>${version.lib.servicetalk}</version>
</dependency>
<dependency>
<groupId>io.servicetalk</groupId>
<artifactId>servicetalk-transport-netty</artifactId>
<version>${version.lib.servicetalk}</version>
</dependency>
<dependency>
<groupId>io.servicetalk</groupId>
<artifactId>servicetalk-http-router-predicate</artifactId>
<version>${version.lib.servicetalk}</version>
</dependency>
<dependency>
<groupId>io.servicetalk</groupId>
<artifactId>servicetalk-http-router-jersey</artifactId>
<version>${version.lib.servicetalk}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${version.lib.servlet}</version>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
<version>${version.lib.swagger}</version>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-jersey2-jaxrs</artifactId>
<version>${version.lib.swagger}</version>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>${version.lib.jaxb-runtime}</version>
</dependency>
<dependency>
<groupId>io.swagger.parser.v3</groupId>
<artifactId>swagger-parser</artifactId>
<version>${version.lib.swagger-parser}</version>
<exclusions>
<exclusion>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>${version.lib.validation}</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>${version.lib.activation}</version>
</dependency>
<dependency>
<groupId>org.jdbi</groupId>
<artifactId>jdbi3-bom</artifactId>
<type>pom</type>
<version>${version.lib.jdbi}</version>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.github.jsqlparser</groupId>
<artifactId>jsqlparser</artifactId>
<version>${version.lib.jsqlparser}</version>
</dependency>
<!-- Logging libraries -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${version.lib.slf4j}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>${version.lib.log4j}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>${version.lib.log4j}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${version.lib.log4j}</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey</groupId>
<artifactId>jersey-bom</artifactId>
<version>${version.lib.jersey}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Testing libraries -->
<dependency>
<artifactId>junit-jupiter-api</artifactId>
<groupId>org.junit.jupiter</groupId>
<scope>test</scope>
<version>${version.lib.junit}</version>
</dependency>
<dependency>
<artifactId>junit-jupiter-params</artifactId>
<groupId>org.junit.jupiter</groupId>
<scope>test</scope>
<version>${version.lib.junit}</version>
</dependency>
<dependency>
<artifactId>junit-jupiter-engine</artifactId>
<groupId>org.junit.jupiter</groupId>
<scope>test</scope>
<version>${version.lib.junit}</version>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
<version>${version.lib.testcontainers}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>junit-jupiter</artifactId>
<version>${version.lib.testcontainers}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>postgresql</artifactId>
<version>${version.lib.testcontainers}</version>
<scope>test</scope>
</dependency>
<dependency>
<artifactId>selenium-java</artifactId>
<groupId>org.seleniumhq.selenium</groupId>
<scope>test</scope>
<version>${version.lib.selenium}</version>
</dependency>
<dependency>
<artifactId>selenium-server</artifactId>
<groupId>org.seleniumhq.selenium</groupId>
<scope>test</scope>
<version>${version.lib.selenium}</version>
</dependency>
<dependency>
<artifactId>selenium-chrome-driver</artifactId>
<groupId>org.seleniumhq.selenium</groupId>
<scope>test</scope>
<version>${version.lib.selenium}</version>
</dependency>
<dependency>
<artifactId>testng</artifactId>
<groupId>org.testng</groupId>
<scope>test</scope>
<version>${version.lib.testng}</version>
</dependency>
<dependency>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock</artifactId>
<version>${version.lib.s3mock}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock-testsupport-common</artifactId>
<version>${version.lib.s3mock}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock-junit5</artifactId>
<version>${version.lib.s3mock}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>${version.lib.jackson}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.test-framework.providers</groupId>
<artifactId>jersey-test-framework-provider-inmemory</artifactId>
<version>${version.lib.jersey}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.awaitility</groupId>
<artifactId>awaitility</artifactId>
<version>${version.lib.awaitability}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>${version.lib.mockito}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<scope>test</scope>
<version>${version.lib.junit-vintage}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<artifactId>protobuf-java</artifactId>
<groupId>com.google.protobuf</groupId>
</dependency>
<dependency>
<artifactId>guava</artifactId>
<groupId>com.google.guava</groupId>
</dependency>
<dependency>
<artifactId>jts-core</artifactId>
<groupId>org.locationtech.jts</groupId>
</dependency>
<dependency>
<artifactId>proj4j</artifactId>
<groupId>org.locationtech.proj4j</groupId>
</dependency>
<dependency>
<artifactId>commons-compress</artifactId>
<groupId>org.apache.commons</groupId>
</dependency>
<!-- Logging libraries -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<!-- Testing libraries -->
<dependency>
<artifactId>junit-jupiter-api</artifactId>
<groupId>org.junit.jupiter</groupId>
</dependency>
<dependency>
<artifactId>junit-jupiter-engine</artifactId>
<groupId>org.junit.jupiter</groupId>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>junit-jupiter</artifactId>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<dependency>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock</artifactId>
</dependency>
<dependency>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock-testsupport-common</artifactId>
</dependency>
<dependency>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock-junit5</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
</dependency>
<dependency>
<groupId>org.awaitility</groupId>
<artifactId>awaitility</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>