solus
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.phonepe</groupId>
<artifactId>solus</artifactId>
<version>v1.0.0-3</version>
</dependency><?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">
<modelVersion>4.0.0</modelVersion>
<artifactId>solus</artifactId>
<groupId>com.phonepe</groupId>
<version>v1.0.0-3</version>
<name>Solus</name>
<url>https://github.com/PhonePe/Solus</url>
<description>TTL based Deduping library for (hundred+) billion scale</description>
<inceptionYear>2026</inceptionYear>
<scm>
<connection>scm:git:https://github.com/PhonePe/Solus.git</connection>
<developerConnection>scm:git:https://github.com/PhonePe/Solus.git</developerConnection>
<tag>HEAD</tag>
<url>https://github.com/PhonePe/Solus.git</url>
</scm>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
<comments>A business-friendly OSS license</comments>
</license>
</licenses>
<developers>
<developer>
<id>MISBMS</id>
<name>Mohammed Irfanulla S</name>
<email>mohammed.irfanulla.s1@gmail.com</email>
<roles>
<role>owner</role>
<role>developer</role>
</roles>
</developer>
<developer>
<id>tshan10</id>
<name>Shantanu Tiwari</name>
<email>tshantanu510@gmail.com</email>
<roles>
<role>owner</role>
<role>developer</role>
</roles>
</developer>
<developer>
<id>mirzabob</id>
<name>Mirza Azhar Wasim</name>
<email>mirzaazharwasim@gmail.com</email>
<roles>
<role>developer</role>
</roles>
</developer>
</developers>
<issueManagement>
<system>GitHub Issues</system>
<url>https://github.com/PhonePe/Solus/issues</url>
</issueManagement>
<ciManagement>
<system>Travis CI</system>
<url>https://travis-ci.org/PhonePe/Solus</url>
</ciManagement>
<repositories>
<repository>
<id>clojars.org</id>
<url>https://clojars.org/repo</url>
</repository>
</repositories>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<properties>
<!-- Java related properties -->
<jdk.source.version>17</jdk.source.version>
<jdk.target.version>17</jdk.target.version>
<jdk.release.version>17</jdk.release.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- Maven related properties -->
<maven.compiler.plugin.version>3.9.0</maven.compiler.plugin.version>
<jacoco.maven.plugin.version>0.8.7</jacoco.maven.plugin.version>
<maven.source.plugin.version>3.2.0</maven.source.plugin.version>
<maven.gpg.plugin.version>1.6</maven.gpg.plugin.version>
<maven.sonar.plugin.version>3.9.1.2184</maven.sonar.plugin.version>
<lombok.maven.plugin.version>1.18.20.0</lombok.maven.plugin.version>
<maven.javadoc.plugin.version>3.3.1</maven.javadoc.plugin.version>
<maven.surefire.plugin.version>3.0.0-M8</maven.surefire.plugin.version>
<sonatype.central.publishing.maven.plugin.version>0.5.0</sonatype.central.publishing.maven.plugin.version>
<maven.release.plugin.version>2.5.3</maven.release.plugin.version>
<maven.javadoc.skip>true</maven.javadoc.skip>
<maven.deploy.skip>false</maven.deploy.skip>
<lombok.version>1.18.24</lombok.version>
<jackson.version>2.13.0</jackson.version>
<dropwizard-validation.version>2.0.23</dropwizard-validation.version>
<guava-retrying.version>2.0.0</guava-retrying.version>
<commons-lang3.version>3.12.0</commons-lang3.version>
<caffeine.version>2.7.0</caffeine.version>
<aerospike.version>6.1.7</aerospike.version>
<hbase-client.version>2.0.1</hbase-client.version>
<hbase-ds.version>0.0.2</hbase-ds.version>
<slf4j.version>2.0.4</slf4j.version>
<mockito.version>4.3.1</mockito.version>
<junit-testcontainer.version>1.0.6</junit-testcontainer.version>
<jna.version>5.7.0</jna.version>
<!-- Sonar properties -->
<sonar.projectKey>PhonePe_Solus</sonar.projectKey>
<sonar.organization>phonepe</sonar.organization>
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
<sonar.sources>src/main</sonar.sources>
<sonar.tests>src/test</sonar.tests>
<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<sonar.coverage.jacoco.xmlReportPaths>${project.basedir}/target/site/jacoco/jacoco.xml
</sonar.coverage.jacoco.xmlReportPaths>
<sonar.language>java</sonar.language>
<sonar.qualitygate.wait>true</sonar.qualitygate.wait>
</properties>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
<scope>provided</scope>
</dependency>
<!--Jackson dependencies-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
</dependency>
<!--Dropwizard dependencies-->
<dependency>
<groupId>io.dropwizard</groupId>
<artifactId>dropwizard-validation</artifactId>
<version>${dropwizard-validation.version}</version>
<exclusions>
<exclusion>
<groupId>io.dropwizard</groupId>
<artifactId>dropwizard-util</artifactId>
</exclusion>
<exclusion>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
</exclusion>
<exclusion>
<groupId>org.glassfish</groupId>
<artifactId>javax.el</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--Data stores dependencies-->
<dependency>
<groupId>com.aerospike</groupId>
<artifactId>aerospike-client</artifactId>
<version>${aerospike.version}</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-shaded-client</artifactId>
<version>${hbase-client.version}</version>
</dependency>
<dependency>
<groupId>com.sematext.hbase.ds</groupId>
<artifactId>hbase-ds</artifactId>
<version>${hbase-ds.version}</version>
</dependency>
<!--Utilities dependencies-->
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
<version>${caffeine.version}</version>
</dependency>
<dependency>
<groupId>com.github.rholder</groupId>
<artifactId>guava-retrying</artifactId>
<version>${guava-retrying.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${commons-lang3.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>
<!--Test dependencies-->
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId>
<version>${mockito.version}</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.version}</version>
</dependency>
<dependency>
<groupId>io.appform.testcontainer</groupId>
<artifactId>junit-testcontainer-aerospike</artifactId>
<version>${junit-testcontainer.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>com.aerospike</groupId>
<artifactId>aerospike-client</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>${jna.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compiler.plugin.version}</version>
<configuration>
<source>${jdk.source.version}</source>
<target>${jdk.target.version}</target>
<release>${jdk.release.version}</release>
<showWarnings>true</showWarnings>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>${maven.source.plugin.version}</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.projectlombok</groupId>
<artifactId>lombok-maven-plugin</artifactId>
<version>${lombok.maven.plugin.version}</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>delombok</goal>
</goals>
<configuration>
<sourceDirectory>src/main/java</sourceDirectory>
<outputDirectory>${project.basedir}/delombok</outputDirectory>
<addOutputDirectory>false</addOutputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven.javadoc.plugin.version}</version>
<configuration>
<source>${jdk.source.version}</source>
<sourcepath>${project.basedir}/delombok</sourcepath>
<skip>false</skip>
<doclint>none</doclint>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven.surefire.plugin.version}</version>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>${sonatype.central.publishing.maven.plugin.version}</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<autoPublish>true</autoPublish>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>${maven.release.plugin.version}</version>
<configuration>
<autoVersionSubmodules>true</autoVersionSubmodules>
<useReleaseProfile>false</useReleaseProfile>
<releaseProfiles>release</releaseProfiles>
<goals>deploy</goals>
</configuration>
</plugin>
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>${maven.sonar.plugin.version}</version>
<executions>
<execution>
<id>sonar-run</id>
<phase>verify</phase>
<goals>
<goal>sonar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.maven.plugin.version}</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<append>true</append>
</configuration>
</execution>
<execution>
<id>report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
<configuration>
<excludes>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>release</id>
<activation>
<property>
<name>release</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven.gpg.plugin.version}</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>