<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>

	<parent>
		<groupId>com.erudika</groupId>
		<artifactId>para-parent</artifactId>
		<version>1.45.4</version>
	</parent>

	<artifactId>para-core</artifactId>
	<packaging>jar</packaging>
	<name>para-core</name>

	<properties>
		<jacksonVer>2.13.2</jacksonVer>
		<flexmarkVer>0.64.0</flexmarkVer>
	</properties>

	<dependencies>
		<!-- AWS JAVA SDK -->
		<dependency>
			<groupId>software.amazon.awssdk</groupId>
			<artifactId>auth</artifactId>
			<version>${awsJdkVer}</version>
		</dependency>

		<!-- CLASSGRAPH -->
		<dependency>
			<groupId>io.github.classgraph</groupId>
			<artifactId>classgraph</artifactId>
			<version>4.8.141</version>
		</dependency>

		<!--	 INJECT & JAX-RS -->
		<dependency>
			<groupId>javax.ws.rs</groupId>
			<artifactId>javax.ws.rs-api</artifactId>
			<version>2.1.1</version>
			<!--<scope>provided</scope>-->
		</dependency>
		<dependency>
			<groupId>jakarta.inject</groupId>
			<artifactId>jakarta.inject-api</artifactId>
			<version>1.0.5</version>
		</dependency>

		<!-- JACKSON -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.jaxrs</groupId>
			<artifactId>jackson-jaxrs-base</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.jaxrs</groupId>
			<artifactId>jackson-jaxrs-json-provider</artifactId>
			<version>${jacksonVer}</version>
			<exclusions>
				<exclusion>
					<groupId>com.fasterxml.jackson.module</groupId>
					<artifactId>jackson-module-jaxb-annotations</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.13.2.2</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.dataformat</groupId>
			<artifactId>jackson-dataformat-cbor</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.dataformat</groupId>
			<artifactId>jackson-dataformat-smile</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.dataformat</groupId>
			<artifactId>jackson-dataformat-yaml</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.module</groupId>
			<artifactId>jackson-module-parameter-names</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.datatype</groupId>
			<artifactId>jackson-datatype-jdk8</artifactId>
			<version>${jacksonVer}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.datatype</groupId>
			<artifactId>jackson-datatype-jsr310</artifactId>
			<version>${jacksonVer}</version>
		</dependency>

		<!-- LOGGING -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>${slf4jVer}</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jcl-over-slf4j</artifactId>
			<version>${slf4jVer}</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jul-to-slf4j</artifactId>
			<version>${slf4jVer}</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-core</artifactId>
			<version>${logbackVer}</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>${logbackVer}</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-access</artifactId>
			<version>${logbackVer}</version>
		</dependency>

		<!-- METRICS -->
		<dependency>
			<groupId>io.dropwizard.metrics</groupId>
			<artifactId>metrics-core</artifactId>
			<version>${metricsVer}</version>
		</dependency>

		<!-- OTHER -->
		<dependency>
			<groupId>commons-beanutils</groupId>
			<artifactId>commons-beanutils</artifactId>
			<version>1.9.4</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>com.typesafe</groupId>
			<artifactId>config</artifactId>
			<version>1.4.2</version>
		</dependency>
		<dependency>
			<groupId>org.hibernate.validator</groupId>
			<artifactId>hibernate-validator</artifactId>
			<!-- WARN: Breaking changes in 7.x! Wait until Spring Boot 6, javax=>jakarta -->
			<version>6.2.3.Final</version>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.12.0</version>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-text</artifactId>
			<version>1.9</version>
		</dependency>
		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>${commonsCodecVer}</version>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>2.11.0</version>
		</dependency>
		<dependency>
			<groupId>org.jsoup</groupId>
			<artifactId>jsoup</artifactId>
			<version>1.14.3</version>
		</dependency>
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark</artifactId>
			<version>${flexmarkVer}</version>
		</dependency>
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark-ext-emoji</artifactId>
			<version>${flexmarkVer}</version>
			<exclusions>
				<exclusion>
					<groupId>com.vladsch.flexmark</groupId>
					<artifactId>flexmark-jira-converter</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark-ext-gfm-strikethrough</artifactId>
			<version>${flexmarkVer}</version>
		</dependency>
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark-ext-gfm-tasklist</artifactId>
			<version>${flexmarkVer}</version>
		</dependency>
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark-ext-tables</artifactId>
			<version>${flexmarkVer}</version>
		</dependency>
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark-ext-autolink</artifactId>
			<version>${flexmarkVer}</version>
		</dependency>
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark-ext-media-tags</artifactId>
			<version>${flexmarkVer}</version>
		</dependency>
		<dependency>
			<groupId>de.svenkubiak</groupId>
			<artifactId>jBCrypt</artifactId>
			<version>0.4.3</version>
		</dependency>
		<dependency>
			<groupId>com.samskivert</groupId>
			<artifactId>jmustache</artifactId>
			<version>1.15</version>
		</dependency>
		<dependency>
			<groupId>javax.validation</groupId>
			<artifactId>validation-api</artifactId>
			<version>2.0.1.Final</version>
		</dependency>
		<dependency>
			<groupId>javax.el</groupId>
			<artifactId>javax.el-api</artifactId>
			<version>3.0.1-b06</version>
		</dependency>
<!--		<dependency>
			<groupId>javax.xml.bind</groupId>
			<artifactId>jaxb-api</artifactId>
			<version>2.4.0-b180830.0359</version>
		</dependency>-->
		<dependency>
			<groupId>org.glassfish.web</groupId>
			<artifactId>javax.el</artifactId>
			<version>2.2.6</version>
		</dependency>
		<dependency>
			<groupId>org.codehaus.woodstox</groupId>
			<artifactId>stax2-api</artifactId>
			<version>4.2.1</version>
		</dependency>
		<dependency>
			<groupId>io.github.hakky54</groupId>
			<artifactId>sslcontext-kickstart</artifactId>
			<version>7.3.0</version>
		</dependency>
	</dependencies>

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>templating-maven-plugin</artifactId>
					<version>1.0.0</version>
					<executions>
						<execution>
							<id>generate-verion-class</id>
							<goals>
								<goal>filter-sources</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
			</plugins>
		</pluginManagement>

		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>buildnumber-maven-plugin</artifactId>
				<version>3.0.0</version>
				<configuration>
					<revisionOnScmFailure>UNKNOWN</revisionOnScmFailure>
					<getRevisionOnlyOnce>true</getRevisionOnlyOnce>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>create</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>templating-maven-plugin</artifactId>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<version>3.1.2</version>
				<dependencies>
					<dependency>
						<groupId>com.puppycrawl.tools</groupId>
						<artifactId>checkstyle</artifactId>
						<version>9.2</version>
					</dependency>
				</dependencies>
				<executions>
					<execution>
						<id>validate-core</id>
						<phase>validate</phase>
						<configuration>
							<skip>${skipTests}</skip>
							<configLocation>${basedir}/src/main/resources/checkstyle.xml</configLocation>
							<encoding>UTF-8</encoding>
							<consoleOutput>true</consoleOutput>
							<failsOnError>true</failsOnError>
							<linkXRef>false</linkXRef>
							<excludes>**/module-info.java</excludes>
						</configuration>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.3.1</version>
				<executions>
					<execution>
						<id>javadocs</id>
						<goals>
							<goal>javadoc</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<release>11</release>
					<stylesheetfile>src/main/javadoc/stylesheet.css</stylesheetfile>
					<show>public</show>
					<aggregate>true</aggregate>
					<quiet>true</quiet>
					<docfilessubdirs>true</docfilessubdirs>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>3.2.0</version>
				<configuration>
					<archive>
						<manifestEntries>
							<Automatic-Module-Name>com.erudika.para.core</Automatic-Module-Name>
						</manifestEntries>
					</archive>
				</configuration>
			</plugin>
		</plugins>
	</build>

</project>
