mon/pom.xml

130 lines
4.7 KiB
XML
Raw Normal View History

2017-09-15 19:13:11 +01:00
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
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>
2018-06-27 07:04:00 +01:00
<parent>
<groupId>net.kemitix</groupId>
<artifactId>kemitix-parent</artifactId>
<version>5.3.0</version>
2018-06-27 07:04:00 +01:00
<relativePath/>
</parent>
2017-09-15 19:13:11 +01:00
<artifactId>mon</artifactId>
2020-06-20 22:30:17 +01:00
<version>2.2.1-SNAPSHOT</version>
<name>Mon</name>
<description>TypeAlias, Result and Maybe for Java</description>
<issueManagement>
2018-07-21 22:50:32 +01:00
<url>https://github.com/kemitix/mon/issues</url>
<system>github Issues</system>
</issueManagement>
<scm>
2018-07-21 22:50:32 +01:00
<url>https://github.com/kemitix/mon</url>
<connection>scm:git:https://github.com/kemitix/mon.git</connection>
<developerConnection>scm:git:git@github.com:kemitix/mon.git</developerConnection>
</scm>
2018-07-21 22:50:32 +01:00
<url>https://github.com/kemitix/mon</url>
<inceptionYear>2017</inceptionYear>
<properties>
<java.version>1.8</java.version>
<junit.version>5.6.2</junit.version>
<mockito.version>3.5.0</mockito.version>
<assertj.version>3.16.1</assertj.version>
<lombok.version>1.18.12</lombok.version>
<tiles-maven-plugin.version>2.17</tiles-maven-plugin.version>
JDK 13 Compatibility (#116) * Add jdk 13 to build matrix * Adjust indentation * Adjust indentation * Bump kemitix-maven-tiles from 1.2.0 to 2.4.1 * Fix TypeAlias.equals(Object) does not check for null argument net.kemitix.mon.TypeAlias.equals(Object) does not check for null argument [net.kemitix.mon.TypeAlias] At TypeAlias.java:[lines 82-88] NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT * Fix TypeAlias.flatMap(Function) declares unbound method template parameter [ERROR] Method net.kemitix.mon.TypeAlias.flatMap(Function) declares unbound method template parameter(s) [net.kemitix.mon.TypeAlias] At TypeAlias.java:[line 72] UMTP_UNBOUND_METHOD_TEMPLATE_PARAMETER * Fix Lazy has a circular dependency with other classes [ERROR] Class net.kemitix.mon.lazy.Lazy has a circular dependency with other classes [net.kemitix.mon.lazy.Lazy] At Lazy.java:[lines 36-46] FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Fix Synchronization performed on AtomicReference [ERROR] Synchronization performed on java.util.concurrent.atomic.AtomicReference in net.kemitix.mon.lazy.LazySupplier.value() [net.kemitix.mon.lazy.LazySupplier] At LazySupplier.java:[line 61] JLM_JSR166_UTILCONCURRENT_MONITORENTER * Fix Just.orElseThrow(Supplier) declares throwing an exception that isn't thrown [ERROR] Non derivable method net.kemitix.mon.maybe.Just.orElseThrow(Supplier) declares throwing an exception that isn't thrown [net.kemitix.mon.maybe.Just] At Just.java:[line 102] BED_BOGUS_EXCEPTION_DECLARATION * Fix Maybe has a circular dependency with other classes [ERROR] Class net.kemitix.mon.maybe.Maybe has a circular dependency with other classes [net.kemitix.mon.maybe.Maybe] At Maybe.java:[lines 40-94] FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Fix Maybe.findFirst(Stream) uses immediate execution of a block [ERROR] Method net.kemitix.mon.maybe.Maybe.findFirst(Stream) uses immediate execution of a block of code that is often not used [net.kemitix.mon.maybe.Maybe] At Maybe.java:[line 94] OI_OPTIONAL_ISSUES_USES_IMMEDIATE_EXECUTION * Fix Success/Result/Err has a circular dependency [ERROR] Class net.kemitix.mon.result.Err has a circular dependency with other classes [net.kemitix.mon.result.Err] At Err.java: FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Fix GeneralisedTree has a circular dependency [ERROR] Class net.kemitix.mon.tree.GeneralisedTree has a circular dependency with other classes [net.kemitix.mon.tree.GeneralisedTree] At GeneralisedTree.java:[lines 39-80] FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Supress warning about boxing a boolean NAB_NEEDLESS_BOOLEAN_CONSTANT_CONVERSION Without creating a whole reimplemention of Maybe/Just/Nothing purely for `boolean` primitives, we can’t avoid this boxing. * Supress store before return warnings in Lombok generate hashCode USBR_UNNECESSARY_STORE_BEFORE_RETURN The annotation has to be used at the class level, which unfortunately means we have no store-before-return checks for the rest of the class. * Suppress warning about unused parameter The type parameter for `Tree.builder(type)` is used to specify the parameterised type of the return value. * Checkstyle fixups * [changelog] updated
2020-03-20 07:17:29 +00:00
<kemitix-maven-tiles.version>2.4.1</kemitix-maven-tiles.version>
2017-12-24 08:03:45 +00:00
<digraph-dependency.basePackage>net.kemitix.mon</digraph-dependency.basePackage>
<kemitix-checkstyle.version>5.0.0</kemitix-checkstyle.version>
<pitest-maven-plugin.version>1.5.2</pitest-maven-plugin.version>
<pitest-junit5-plugin.version>0.12</pitest-junit5-plugin.version>
<spotbugs.version>4.1.1</spotbugs.version>
</properties>
2017-09-15 19:13:11 +01:00
<dependencies>
2017-12-24 08:03:45 +00:00
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
<scope>provided</scope>
</dependency>
2017-09-15 19:13:11 +01:00
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-junit-jupiter</artifactId>
<version>${mockito.version}</version>
2017-09-15 19:13:11 +01:00
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
2018-02-28 19:58:56 +00:00
<version>${assertj.version}</version>
2017-09-15 19:13:11 +01:00
<scope>test</scope>
</dependency>
JDK 13 Compatibility (#116) * Add jdk 13 to build matrix * Adjust indentation * Adjust indentation * Bump kemitix-maven-tiles from 1.2.0 to 2.4.1 * Fix TypeAlias.equals(Object) does not check for null argument net.kemitix.mon.TypeAlias.equals(Object) does not check for null argument [net.kemitix.mon.TypeAlias] At TypeAlias.java:[lines 82-88] NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT * Fix TypeAlias.flatMap(Function) declares unbound method template parameter [ERROR] Method net.kemitix.mon.TypeAlias.flatMap(Function) declares unbound method template parameter(s) [net.kemitix.mon.TypeAlias] At TypeAlias.java:[line 72] UMTP_UNBOUND_METHOD_TEMPLATE_PARAMETER * Fix Lazy has a circular dependency with other classes [ERROR] Class net.kemitix.mon.lazy.Lazy has a circular dependency with other classes [net.kemitix.mon.lazy.Lazy] At Lazy.java:[lines 36-46] FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Fix Synchronization performed on AtomicReference [ERROR] Synchronization performed on java.util.concurrent.atomic.AtomicReference in net.kemitix.mon.lazy.LazySupplier.value() [net.kemitix.mon.lazy.LazySupplier] At LazySupplier.java:[line 61] JLM_JSR166_UTILCONCURRENT_MONITORENTER * Fix Just.orElseThrow(Supplier) declares throwing an exception that isn't thrown [ERROR] Non derivable method net.kemitix.mon.maybe.Just.orElseThrow(Supplier) declares throwing an exception that isn't thrown [net.kemitix.mon.maybe.Just] At Just.java:[line 102] BED_BOGUS_EXCEPTION_DECLARATION * Fix Maybe has a circular dependency with other classes [ERROR] Class net.kemitix.mon.maybe.Maybe has a circular dependency with other classes [net.kemitix.mon.maybe.Maybe] At Maybe.java:[lines 40-94] FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Fix Maybe.findFirst(Stream) uses immediate execution of a block [ERROR] Method net.kemitix.mon.maybe.Maybe.findFirst(Stream) uses immediate execution of a block of code that is often not used [net.kemitix.mon.maybe.Maybe] At Maybe.java:[line 94] OI_OPTIONAL_ISSUES_USES_IMMEDIATE_EXECUTION * Fix Success/Result/Err has a circular dependency [ERROR] Class net.kemitix.mon.result.Err has a circular dependency with other classes [net.kemitix.mon.result.Err] At Err.java: FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Fix GeneralisedTree has a circular dependency [ERROR] Class net.kemitix.mon.tree.GeneralisedTree has a circular dependency with other classes [net.kemitix.mon.tree.GeneralisedTree] At GeneralisedTree.java:[lines 39-80] FCCD_FIND_CLASS_CIRCULAR_DEPENDENCY * Supress warning about boxing a boolean NAB_NEEDLESS_BOOLEAN_CONSTANT_CONVERSION Without creating a whole reimplemention of Maybe/Just/Nothing purely for `boolean` primitives, we can’t avoid this boxing. * Supress store before return warnings in Lombok generate hashCode USBR_UNNECESSARY_STORE_BEFORE_RETURN The annotation has to be used at the class level, which unfortunately means we have no store-before-return checks for the rest of the class. * Suppress warning about unused parameter The type parameter for `Tree.builder(type)` is used to specify the parameterised type of the return value. * Checkstyle fixups * [changelog] updated
2020-03-20 07:17:29 +00:00
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-annotations</artifactId>
<version>${spotbugs.version}</version>
<scope>provided</scope>
</dependency>
2017-09-15 19:13:11 +01:00
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>${junit.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
2017-12-24 08:03:45 +00:00
<build>
<plugins>
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>${tiles-maven-plugin.version}</version>
<extensions>true</extensions>
<configuration>
<tiles>
<tile>net.kemitix.tiles:all:${kemitix-maven-tiles.version}</tile>
<tile>net.kemitix.checkstyle:tile:${kemitix-checkstyle.version}</tile>
2017-12-24 08:03:45 +00:00
</tiles>
</configuration>
</plugin><!-- tiles-maven-plugin -->
<plugin>
<groupId>org.pitest</groupId>
<artifactId>pitest-maven</artifactId>
<version>${pitest-maven-plugin.version}</version>
<dependencies>
<dependency>
<groupId>org.pitest</groupId>
<artifactId>pitest-junit5-plugin</artifactId>
<version>${pitest-junit5-plugin.version}</version>
</dependency>
</dependencies>
</plugin>
2017-12-24 08:03:45 +00:00
</plugins>
</build>
2017-09-15 19:13:11 +01:00
</project>