mirror of
https://github.com/theotherp/nzbhydra2.git
synced 2026-02-06 11:17:18 +00:00
579 lines
22 KiB
XML
579 lines
22 KiB
XML
<?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>
|
|
|
|
<parent>
|
|
<groupId>org.nzbhydra</groupId>
|
|
<artifactId>nzbhydra2</artifactId>
|
|
<version>5.0.1</version>
|
|
</parent>
|
|
|
|
<artifactId>core</artifactId>
|
|
|
|
<properties>
|
|
<!--Wrap in variable because otherwise it's not propagate to resource filtering below-->
|
|
<maven.build.timestamp2>${maven.build.timestamp}</maven.build.timestamp2>
|
|
<maven.build.timestamp.format>yyyy-MM-dd HH:mm</maven.build.timestamp.format>
|
|
<version.roaster>2.28.0.Final</version.roaster>
|
|
</properties>
|
|
|
|
<build>
|
|
<resources>
|
|
<resource>
|
|
<!--Will replace the @version.string@ with actual content-->
|
|
<filtering>true</filtering>
|
|
<directory>src/main/resources/config</directory>
|
|
<includes>
|
|
<include>application.properties</include>
|
|
</includes>
|
|
</resource>
|
|
<resource>
|
|
<directory>src/main/resources</directory>
|
|
<excludes>
|
|
<exclude>config/application.properties</exclude>
|
|
</excludes>
|
|
</resource>
|
|
</resources>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.graalvm.buildtools</groupId>
|
|
<artifactId>native-maven-plugin</artifactId>
|
|
<version>0.9.19</version>
|
|
<extensions>true</extensions>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<version>3.0.0</version>
|
|
<configuration>
|
|
<archive>
|
|
<index>true</index>
|
|
<manifest>
|
|
<addClasspath>true</addClasspath>
|
|
</manifest>
|
|
<manifestEntries>
|
|
<Built-By>TheOtherP</Built-By>
|
|
<Version>${project.version}</Version>
|
|
<BuildTimestamp>${maven.build.timestamp}</BuildTimestamp>
|
|
</manifestEntries>
|
|
</archive>
|
|
<excludes>
|
|
<exclude>**/*.map</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<version>${spring.boot.maven.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>repackage</goal>
|
|
</goals>
|
|
<configuration>
|
|
<classifier>exec</classifier>
|
|
<mainClass>org.nzbhydra.NzbHydra</mainClass>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>2.22.2</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>2.22.2</version>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<dependencies>
|
|
<!-- internal -->
|
|
<dependency>
|
|
<groupId>org.nzbhydra</groupId>
|
|
<artifactId>mapping</artifactId>
|
|
<version>5.0.1</version>
|
|
</dependency>
|
|
|
|
<!-- spring (boot) -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<artifactId>jaxb-runtime</artifactId>
|
|
<groupId>org.glassfish.jaxb</groupId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-jdbc</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-cache</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-websocket</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-web</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-security</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework</groupId>
|
|
<artifactId>spring-oxm</artifactId>
|
|
<version>${spring.oxm.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-configuration-processor</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-properties-migrator</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-thymeleaf</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-actuator</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.expressly</groupId>
|
|
<artifactId>expressly</artifactId>
|
|
<version>5.0.0</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- database -->
|
|
<dependency>
|
|
<groupId>com.h2database</groupId>
|
|
<artifactId>h2</artifactId>
|
|
<version>2.1.214</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.marschall</groupId>
|
|
<artifactId>threeten-jpa</artifactId>
|
|
<version>1.12</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-core</artifactId>
|
|
<version>${flyway-core.version}</version>
|
|
</dependency>
|
|
|
|
|
|
<!--Jackson-->
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.datatype</groupId>
|
|
<artifactId>jackson-datatype-jdk8</artifactId>
|
|
<version>${jackson.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.dataformat</groupId>
|
|
<artifactId>jackson-dataformat-yaml</artifactId>
|
|
<version>${jackson.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-annotations</artifactId>
|
|
<version>${jackson.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.datatype</groupId>
|
|
<artifactId>jackson-datatype-jsr310</artifactId>
|
|
<version>${jackson.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<artifactId>jackson-annotations</artifactId>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
|
|
<!-- Misc -->
|
|
<dependency>
|
|
<!-- We use logback but due to a CVE in previous versions we force this dependency -->
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-api</artifactId>
|
|
<version>2.19.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
<scope>compile</scope>
|
|
<!-- <optional>true</optional>-->
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.guava</groupId>
|
|
<artifactId>guava</artifactId>
|
|
<version>31.1-jre</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-io</groupId>
|
|
<artifactId>commons-io</artifactId>
|
|
<version>${commons-io.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-lang3</artifactId>
|
|
<version>${commons-lang3.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.briandilley.jsonrpc4j</groupId>
|
|
<artifactId>jsonrpc4j</artifactId>
|
|
<version>1.6</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<artifactId>jackson-core</artifactId>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<artifactId>jackson-databind</artifactId>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<artifactId>jackson-annotations</artifactId>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.commonmark</groupId>
|
|
<artifactId>commonmark</artifactId>
|
|
<version>0.20.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.squareup.okhttp3</groupId>
|
|
<artifactId>okhttp</artifactId>
|
|
<version>${okhttp.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.squareup.okhttp3</groupId>
|
|
<artifactId>logging-interceptor</artifactId>
|
|
<version>${okhttp.version}</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>net.sf.jopt-simple</groupId>
|
|
<artifactId>jopt-simple</artifactId>
|
|
<version>5.0.4</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.jsoup</groupId>
|
|
<artifactId>jsoup</artifactId>
|
|
<version>1.15.3</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>net.jodah</groupId>
|
|
<artifactId>expiringmap</artifactId>
|
|
<version>0.5.10</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.beothorn</groupId>
|
|
<artifactId>URISchemeHandler</artifactId>
|
|
<version>${uri-scheme-handler.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.github.ben-manes.caffeine</groupId>
|
|
<artifactId>caffeine</artifactId>
|
|
<version>3.1.2</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.failsafe</groupId>
|
|
<artifactId>failsafe</artifactId>
|
|
<version>3.3.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>joda-time</groupId>
|
|
<artifactId>joda-time</artifactId>
|
|
<version>2.12.2</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.hibernate.validator</groupId>
|
|
<artifactId>hibernate-validator</artifactId>
|
|
<version>8.0.0.Final</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.javers</groupId>
|
|
<artifactId>javers-core</artifactId>
|
|
<version>${javers-core.version}</version>
|
|
</dependency>
|
|
|
|
<!-- todo spring only supports spring 2.x-->
|
|
<!-- <dependency>-->
|
|
<!-- <groupId>org.springdoc</groupId>-->
|
|
<!-- <artifactId>springdoc-openapi-ui</artifactId>-->
|
|
<!-- <!– When updating make sure the resource path in WebConfiguration is correct –>-->
|
|
<!-- <version>1.6.12</version>-->
|
|
<!-- </dependency>-->
|
|
|
|
<!--logging-->
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-classic</artifactId>
|
|
<version>${logback.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-core</artifactId>
|
|
<version>${logback.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-access</artifactId>
|
|
<version>${logback.version}</version>
|
|
</dependency>
|
|
<!-- todo spring Only supports Spring 2.x -->
|
|
<!-- <dependency>-->
|
|
<!-- <groupId>net.rakugakibox.spring.boot</groupId>-->
|
|
<!-- <artifactId>logback-access-spring-boot-starter</artifactId>-->
|
|
<!-- <version>2.7.1</version>-->
|
|
<!-- </dependency>-->
|
|
<dependency>
|
|
<groupId>net.logstash.logback</groupId>
|
|
<artifactId>logstash-logback-encoder</artifactId>
|
|
<version>${logstash-logback-encoder.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<artifactId>jackson-databind</artifactId>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
<version>2.0.5</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.nzbhydra</groupId>
|
|
<artifactId>sockslib</artifactId>
|
|
<version>3.0.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>net.sourceforge.htmlunit</groupId>
|
|
<artifactId>htmlunit</artifactId>
|
|
<version>2.67.0</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- tests -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.reflections</groupId>
|
|
<artifactId>reflections</artifactId>
|
|
<version>0.10.2</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>xmlunit</groupId>
|
|
<artifactId>xmlunit</artifactId>
|
|
<version>1.6</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<version>4.8.1</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.hamcrest</groupId>
|
|
<artifactId>hamcrest-library</artifactId>
|
|
<version>2.2</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mock-server</groupId>
|
|
<artifactId>mockserver-netty</artifactId>
|
|
<version>5.13.2</version>
|
|
<scope>test</scope>
|
|
<exclusions>
|
|
<exclusion>
|
|
<artifactId>jaxb-api</artifactId>
|
|
<groupId>javax.xml.bind</groupId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.jboss.forge.roaster</groupId>
|
|
<artifactId>roaster-api</artifactId>
|
|
<version>${version.roaster}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.jboss.forge.roaster</groupId>
|
|
<artifactId>roaster-jdt</artifactId>
|
|
<version>${version.roaster}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
</dependencies>
|
|
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>dev</id>
|
|
<dependencies>
|
|
<dependency>
|
|
<!--https://stackoverflow.com/a/47412779-->
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-devtools</artifactId>
|
|
<version>${spring.boot.devtools.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
</dependencies>
|
|
</profile>
|
|
<profile>
|
|
<id>native</id>
|
|
<properties>
|
|
<start-class>org.nzbhydra.NzbHydra</start-class>
|
|
</properties>
|
|
<build>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<configuration>
|
|
<mainClass>org.nzbhydra.NzbHydra</mainClass>
|
|
<image>
|
|
<builder>paketobuildpacks/builder:tiny</builder>
|
|
<env>
|
|
<BP_NATIVE_IMAGE>true</BP_NATIVE_IMAGE>
|
|
</env>
|
|
</image>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>process-aot</id>
|
|
<goals>
|
|
<goal>process-aot</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.graalvm.buildtools</groupId>
|
|
<artifactId>native-maven-plugin</artifactId>
|
|
<configuration>
|
|
<buildArgs>
|
|
<buildArg>-H:+ReportExceptionStackTraces</buildArg>
|
|
<buildArg>-H:-DeadlockWatchdogExitOnTimeout</buildArg>
|
|
<buildArg>-H:DeadlockWatchdogInterval=0</buildArg>
|
|
<buildArg>--initialize-at-build-time=org.apache.commons.logging.LogFactoryService</buildArg>
|
|
</buildArgs>
|
|
<classesDirectory>${project.build.outputDirectory}</classesDirectory>
|
|
<metadataRepository>
|
|
<enabled>true</enabled>
|
|
</metadataRepository>
|
|
<requiredVersion>22.3</requiredVersion>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>add-reachability-metadata</id>
|
|
<goals>
|
|
<goal>add-reachability-metadata</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
</build>
|
|
</profile>
|
|
<profile>
|
|
<id>nativeTest</id>
|
|
<!-- <dependencies>-->
|
|
<!-- <dependency>-->
|
|
<!-- <groupId>org.junit.platform</groupId>-->
|
|
<!-- <artifactId>junit-platform-launcher</artifactId>-->
|
|
<!-- <version>1.9.1</version>-->
|
|
<!-- <scope>test</scope>-->
|
|
<!-- </dependency>-->
|
|
<!-- </dependencies>-->
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>process-test-aot</id>
|
|
<goals>
|
|
<goal>process-test-aot</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.graalvm.buildtools</groupId>
|
|
<artifactId>native-maven-plugin</artifactId>
|
|
<configuration>
|
|
<classesDirectory>${project.build.outputDirectory}</classesDirectory>
|
|
<metadataRepository>
|
|
<enabled>true</enabled>
|
|
</metadataRepository>
|
|
<requiredVersion>22.3</requiredVersion>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>native-test</id>
|
|
<goals>
|
|
<goal>test</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
|
|
|
|
</project>
|