🔀 Merge branch 'release/v82'
[Sone.git] / build.gradle
index 4fd4ada..db5af2b 100644 (file)
@@ -1,18 +1,14 @@
-group = 'net.pterodactylus'
-version = '80'
+import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
 
-buildscript {
-    ext.kotlinVersion = '1.3.50'
-    repositories {
-        mavenCentral()
-    }
-    dependencies {
-        classpath group: 'info.solidsoft.gradle.pitest', name: 'gradle-pitest-plugin', version: '1.4.0'
-        classpath group: 'org.jetbrains.kotlin', name: 'kotlin-gradle-plugin', version: kotlinVersion
-        classpath group: 'org.jetbrains.kotlin', name: 'kotlin-noarg', version: kotlinVersion
-    }
+plugins {
+    id 'org.jetbrains.kotlin.jvm' version '1.3.70'
+    id 'org.jetbrains.kotlin.plugin.noarg' version '1.3.70'
+    id 'info.solidsoft.pitest' version '1.4.5'
 }
 
+group = 'net.pterodactylus'
+version = '82'
+
 repositories {
      mavenCentral()
      maven { url "https://maven.pterodactylus.net/" }
@@ -27,7 +23,11 @@ tasks.withType(JavaCompile) {
        options.encoding = 'UTF-8'
 }
 
-apply plugin: 'kotlin'
+tasks.withType(KotlinCompile) {
+    kotlinOptions {
+        jvmTarget = "1.8"
+    }
+}
 
 configurations {
     provided {
@@ -37,7 +37,7 @@ configurations {
     }
     compile.extendsFrom provided
 }
+
 dependencies {
     provided group: 'org.freenetproject', name: 'fred', version: '0.7.5.1475'
     provided group: 'org.freenetproject', name: 'freenet-ext', version: '29'
@@ -46,9 +46,9 @@ dependencies {
     compile group: 'org.jetbrains.kotlin', name: 'kotlin-stdlib-jdk8'
     compile group: 'org.jetbrains.kotlinx', name: 'kotlinx-coroutines-core', version: '1.3.0-RC'
 
-    compile group: 'net.pterodactylus', name: 'utils', version: '0.12.4'
+    compile group: 'net.pterodactylus', name: 'utils', version: '0.13.1'
     compile group: 'com.google.inject', name: 'guice', version: '4.2.2'
-    compile group: 'com.google.guava', name: 'guava', version: '27.0.1-android'
+    compile group: 'com.google.guava', name: 'guava', version: '27.0.1-jre'
     compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.9.1'
     compile group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-yaml', version: '2.9.1'
     compile group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.2'
@@ -64,12 +64,28 @@ dependencies {
 
 apply from: 'version.gradle'
 
-test {
+task parallelTest(type: Test) {
     maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
+    useJUnit {
+        excludeCategories 'net.pterodactylus.sone.test.NotParallel'
+    }
+}
+
+task notParallelTest(type: Test) {
+    maxParallelForks = 1
+    useJUnit {
+        includeCategories 'net.pterodactylus.sone.test.NotParallel'
+    }
+    dependsOn parallelTest
+}
+
+test {
+    exclude '**'
+    dependsOn parallelTest, notParallelTest
 }
 
 task fatJar(type: Jar) {
-    archiveName = project.name.toLowerCase() + '-jar-with-dependencies.jar'
+    archiveFileName = project.name.toLowerCase() + '-jar-with-dependencies.jar'
     from { (configurations.runtime - configurations.provided).collect { it.isDirectory() ? it : zipTree(it) } }
     manifest {
         attributes('Plugin-Main-Class': 'net.pterodactylus.sone.main.SonePlugin')
@@ -95,9 +111,8 @@ jacoco {
 
 jacocoTestReport.dependsOn test
 
-apply plugin: 'info.solidsoft.pitest'
-
 pitest {
+    pitestVersion = '1.4.10'
     outputFormats = ['HTML', 'XML']
     timestampedReports = false
     timeoutFactor = 3.0
@@ -129,8 +144,6 @@ task countLines {
     dependsOn tasks.countLinesTest
 }
 
-apply plugin: 'kotlin-noarg'
-
 noArg {
     annotation('net.pterodactylus.sone.main.NoArg')
 }