mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-02 16:49:12 +00:00
Remove apollo-plugin Gradle plugin
Replaces the old Gradle plugin with plain Gradle buildscripts. Also cleans-up the current Gradle extensions and re-adds detekt, along with JUnit 5 support to all modules.
This commit is contained in:
+3
-1
@@ -3,6 +3,7 @@ plugins {
|
|||||||
id 'org.jetbrains.intellij' version '0.3.6' apply(false)
|
id 'org.jetbrains.intellij' version '0.3.6' apply(false)
|
||||||
id 'org.jmailen.kotlinter' version '1.16.0' apply(false)
|
id 'org.jmailen.kotlinter' version '1.16.0' apply(false)
|
||||||
id 'org.sonarqube' version '2.6.2'
|
id 'org.sonarqube' version '2.6.2'
|
||||||
|
id "io.gitlab.arturbosch.detekt" version "1.0.0.RC8"
|
||||||
}
|
}
|
||||||
|
|
||||||
allprojects {
|
allprojects {
|
||||||
@@ -17,5 +18,6 @@ allprojects {
|
|||||||
}
|
}
|
||||||
|
|
||||||
apply from: 'gradle/properties.gradle'
|
apply from: 'gradle/properties.gradle'
|
||||||
apply from: 'gradle/quality-gate.gradle'
|
apply from: 'gradle/code-quality.gradle'
|
||||||
|
apply from: 'gradle/testing.gradle'
|
||||||
apply from: 'gradle/wrapper.gradle'
|
apply from: 'gradle/wrapper.gradle'
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
apply plugin: 'groovy'
|
|
||||||
|
|
||||||
repositories {
|
|
||||||
mavenLocal()
|
|
||||||
maven { url "https://repo.maven.apache.org/maven2" }
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
|
||||||
compile gradleApi()
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
package org.apollo.build.plugin
|
|
||||||
|
|
||||||
import org.gradle.api.Plugin
|
|
||||||
import org.gradle.api.Project
|
|
||||||
|
|
||||||
class ApolloPlugin implements Plugin<Project> {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
void apply(Project project) {
|
|
||||||
project.extensions.create('plugin', ApolloPluginExtension, project)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,92 +0,0 @@
|
|||||||
package org.apollo.build.plugin
|
|
||||||
|
|
||||||
import org.gradle.api.Project
|
|
||||||
|
|
||||||
class ApolloPluginExtension {
|
|
||||||
final Project project
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The name of this plugin (defaults to the project name).
|
|
||||||
*/
|
|
||||||
String name
|
|
||||||
|
|
||||||
/**
|
|
||||||
* An optional description of this plugin.
|
|
||||||
*/
|
|
||||||
String description = "Empty description"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A list of other {@link ApolloPlugin}s that this plugin depends on.
|
|
||||||
*/
|
|
||||||
List<String> dependencies = []
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A list of others who contributed to this plugin.
|
|
||||||
*/
|
|
||||||
List<String> authors = []
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The directory that library files and script files are found under.
|
|
||||||
*/
|
|
||||||
final String srcDir = "src/"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The directory that tests are found under.
|
|
||||||
*/
|
|
||||||
final String testDir = "test/"
|
|
||||||
|
|
||||||
ApolloPluginExtension(Project project) {
|
|
||||||
this.project = project
|
|
||||||
this.name = project.name
|
|
||||||
|
|
||||||
init()
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Setup the {@link Project} with the correct dependencies and tasks required to build the plugin
|
|
||||||
* and its scripts.
|
|
||||||
*/
|
|
||||||
def init() {
|
|
||||||
project.plugins.apply('kotlin')
|
|
||||||
project.dependencies {
|
|
||||||
implementation project.findProject(':game')
|
|
||||||
implementation project.findProject(':cache')
|
|
||||||
implementation project.findProject(':net')
|
|
||||||
implementation project.findProject(':util')
|
|
||||||
testImplementation project.findProject(':game:plugin-testing')
|
|
||||||
}
|
|
||||||
|
|
||||||
project.sourceSets {
|
|
||||||
main.kotlin.srcDirs += this.srcDir
|
|
||||||
test.kotlin.srcDirs += this.testDir
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def getDependencies() {
|
|
||||||
return dependencies
|
|
||||||
}
|
|
||||||
|
|
||||||
def setDependencies(List<String> dependencies) {
|
|
||||||
dependencies.each {
|
|
||||||
def project = project.findProject(":game:plugin:$it")
|
|
||||||
if (project == null) {
|
|
||||||
throw new MissingPluginDependencyException(name, it)
|
|
||||||
}
|
|
||||||
|
|
||||||
this.project.dependencies.add('compile', project)
|
|
||||||
}
|
|
||||||
|
|
||||||
this.dependencies = dependencies
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A {@link RuntimeException} thrown when a plugin dependency was missing.
|
|
||||||
*/
|
|
||||||
class MissingPluginDependencyException extends RuntimeException {
|
|
||||||
|
|
||||||
MissingPluginDependencyException(String plugin, String dependency) {
|
|
||||||
super("Missing dependency in the `$plugin` plugin: failed to resolve `$dependency`.")
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
implementation-class=org.apollo.build.plugin.ApolloPlugin
|
|
||||||
Vendored
+6
@@ -5,4 +5,10 @@ description = 'Apollo Cache'
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation project(':util')
|
implementation project(':util')
|
||||||
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
||||||
|
|
||||||
|
test.useJUnitPlatform()
|
||||||
|
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: junitJupiterVersion
|
||||||
|
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: junitJupiterVersion
|
||||||
|
testImplementation group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVintageVersion
|
||||||
|
testImplementation group: 'org.junit.platform', name: 'junit-platform-launcher', version: junitPlatformVersion
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,16 @@
|
|||||||
plugin {
|
apply plugin: 'org.jetbrains.kotlin.jvm'
|
||||||
name = "Apollo Plugin API"
|
apply plugin: 'java'
|
||||||
description = "Helpers and API for common plugin usecases"
|
description = 'Helpers and API for common plugin usecases'
|
||||||
}
|
|
||||||
|
test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation project(':game')
|
||||||
|
implementation project(':cache')
|
||||||
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,6 +1,12 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "Area listeners"
|
|
||||||
description = "Enables plugins to listen on mobs entering, moving inside of, or leaving a rectangular area."
|
description = 'Enables plugins to listen on mobs entering, moving inside of, or leaving a rectangular area.'
|
||||||
authors = ["Major"]
|
|
||||||
dependencies = ["api"]
|
dependencies {
|
||||||
}
|
implementation project(':game')
|
||||||
|
implementation project(':cache')
|
||||||
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
implementation project(':game:plugin:api')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "banking"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Major",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
}
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,8 +1,21 @@
|
|||||||
subprojects { subproj ->
|
gradle.projectsEvaluated {
|
||||||
if (subproj.buildFile.exists()) {
|
configure(subprojects.findAll { it.buildFile.exists() }) { subproj ->
|
||||||
apply plugin: 'apollo-plugin'
|
|
||||||
apply from: "$rootDir/gradle/kotlin.gradle"
|
apply from: "$rootDir/gradle/kotlin.gradle"
|
||||||
|
|
||||||
|
sourceSets {
|
||||||
|
main {
|
||||||
|
kotlin {
|
||||||
|
srcDirs += "src"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
test {
|
||||||
|
kotlin {
|
||||||
|
srcDirs += "test"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
test {
|
test {
|
||||||
useJUnitPlatform()
|
useJUnitPlatform()
|
||||||
}
|
}
|
||||||
@@ -14,8 +27,7 @@ subprojects { subproj ->
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
test.useJUnitPlatform()
|
|
||||||
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,3 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "private_messaging"
|
|
||||||
}
|
dependencies {
|
||||||
|
implementation project(':game')
|
||||||
|
implementation project(':cache')
|
||||||
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,12 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "chat_commands"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Graham",
|
implementation project(':game')
|
||||||
"Major",
|
implementation project(':cache')
|
||||||
"lare96",
|
implementation project(':net')
|
||||||
"cubeee",
|
implementation project(':util')
|
||||||
]
|
implementation project(':game:plugin:api')
|
||||||
dependencies = [
|
testImplementation project(':game:plugin-testing')
|
||||||
"api"
|
}
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "consumables"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Gary Tierney",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
}
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,325 +0,0 @@
|
|||||||
autoCorrect: true
|
|
||||||
failFast: false
|
|
||||||
|
|
||||||
build:
|
|
||||||
warningThreshold: 5
|
|
||||||
failThreshold: 10
|
|
||||||
weights:
|
|
||||||
complexity: 2
|
|
||||||
formatting: 1
|
|
||||||
LongParameterList: 1
|
|
||||||
comments: 1
|
|
||||||
|
|
||||||
processors:
|
|
||||||
active: true
|
|
||||||
exclude:
|
|
||||||
# - 'FunctionCountProcessor'
|
|
||||||
# - 'PropertyCountProcessor'
|
|
||||||
# - 'ClassCountProcessor'
|
|
||||||
# - 'PackageCountProcessor'
|
|
||||||
# - 'KtFileCountProcessor'
|
|
||||||
|
|
||||||
console-reports:
|
|
||||||
active: true
|
|
||||||
exclude:
|
|
||||||
# - 'ProjectStatisticsReport'
|
|
||||||
# - 'ComplexityReport'
|
|
||||||
# - 'NotificationReport'
|
|
||||||
# - 'FindingsReport'
|
|
||||||
# - 'BuildFailureReport'
|
|
||||||
|
|
||||||
output-reports:
|
|
||||||
active: true
|
|
||||||
exclude:
|
|
||||||
# - 'PlainOutputReport'
|
|
||||||
# - 'XmlOutputReport'
|
|
||||||
|
|
||||||
potential-bugs:
|
|
||||||
active: true
|
|
||||||
DuplicateCaseInWhenExpression:
|
|
||||||
active: true
|
|
||||||
EqualsAlwaysReturnsTrueOrFalse:
|
|
||||||
active: false
|
|
||||||
EqualsWithHashCodeExist:
|
|
||||||
active: true
|
|
||||||
WrongEqualsTypeParameter:
|
|
||||||
active: false
|
|
||||||
ExplicitGarbageCollectionCall:
|
|
||||||
active: true
|
|
||||||
UnreachableCode:
|
|
||||||
active: true
|
|
||||||
LateinitUsage:
|
|
||||||
active: false
|
|
||||||
UnsafeCallOnNullableType:
|
|
||||||
active: false
|
|
||||||
UnsafeCast:
|
|
||||||
active: false
|
|
||||||
UselessPostfixExpression:
|
|
||||||
active: false
|
|
||||||
|
|
||||||
performance:
|
|
||||||
active: true
|
|
||||||
ForEachOnRange:
|
|
||||||
active: true
|
|
||||||
SpreadOperator:
|
|
||||||
active: true
|
|
||||||
UnnecessaryTemporaryInstantiation:
|
|
||||||
active: true
|
|
||||||
|
|
||||||
exceptions:
|
|
||||||
active: true
|
|
||||||
ExceptionRaisedInUnexpectedLocation:
|
|
||||||
active: false
|
|
||||||
methodNames: 'toString,hashCode,equals,finalize'
|
|
||||||
SwallowedException:
|
|
||||||
active: false
|
|
||||||
TooGenericExceptionCaught:
|
|
||||||
active: true
|
|
||||||
exceptions:
|
|
||||||
- ArrayIndexOutOfBoundsException
|
|
||||||
- Error
|
|
||||||
- Exception
|
|
||||||
- IllegalMonitorStateException
|
|
||||||
- IndexOutOfBoundsException
|
|
||||||
- InterruptedException
|
|
||||||
- NullPointerException
|
|
||||||
- RuntimeException
|
|
||||||
TooGenericExceptionThrown:
|
|
||||||
active: true
|
|
||||||
exceptions:
|
|
||||||
- Throwable
|
|
||||||
- ThrowError
|
|
||||||
- ThrowException
|
|
||||||
- ThrowNullPointerException
|
|
||||||
- ThrowRuntimeException
|
|
||||||
- ThrowThrowable
|
|
||||||
InstanceOfCheckForException:
|
|
||||||
active: false
|
|
||||||
IteratorNotThrowingNoSuchElementException:
|
|
||||||
active: false
|
|
||||||
PrintExceptionStackTrace:
|
|
||||||
active: false
|
|
||||||
RethrowCaughtException:
|
|
||||||
active: false
|
|
||||||
ReturnFromFinally:
|
|
||||||
active: false
|
|
||||||
ThrowingExceptionFromFinally:
|
|
||||||
active: false
|
|
||||||
ThrowingExceptionInMain:
|
|
||||||
active: false
|
|
||||||
ThrowingNewInstanceOfSameException:
|
|
||||||
active: false
|
|
||||||
|
|
||||||
empty-blocks:
|
|
||||||
active: true
|
|
||||||
EmptyCatchBlock:
|
|
||||||
active: true
|
|
||||||
EmptyClassBlock:
|
|
||||||
active: true
|
|
||||||
EmptyDefaultConstructor:
|
|
||||||
active: true
|
|
||||||
EmptyDoWhileBlock:
|
|
||||||
active: true
|
|
||||||
EmptyElseBlock:
|
|
||||||
active: true
|
|
||||||
EmptyFinallyBlock:
|
|
||||||
active: true
|
|
||||||
EmptyForBlock:
|
|
||||||
active: true
|
|
||||||
EmptyFunctionBlock:
|
|
||||||
active: true
|
|
||||||
EmptyIfBlock:
|
|
||||||
active: true
|
|
||||||
EmptyInitBlock:
|
|
||||||
active: true
|
|
||||||
EmptySecondaryConstructor:
|
|
||||||
active: true
|
|
||||||
EmptyWhenBlock:
|
|
||||||
active: true
|
|
||||||
EmptyWhileBlock:
|
|
||||||
active: true
|
|
||||||
|
|
||||||
complexity:
|
|
||||||
active: true
|
|
||||||
LongMethod:
|
|
||||||
threshold: 20
|
|
||||||
LongParameterList:
|
|
||||||
threshold: 5
|
|
||||||
LargeClass:
|
|
||||||
threshold: 150
|
|
||||||
ComplexMethod:
|
|
||||||
threshold: 10
|
|
||||||
TooManyFunctions:
|
|
||||||
threshold: 10
|
|
||||||
ComplexCondition:
|
|
||||||
threshold: 3
|
|
||||||
LabeledExpression:
|
|
||||||
active: false
|
|
||||||
StringLiteralDuplication:
|
|
||||||
active: false
|
|
||||||
threshold: 2
|
|
||||||
ignoreAnnotation: true
|
|
||||||
excludeStringsWithLessThan5Characters: true
|
|
||||||
ignoreStringsRegex: '$^'
|
|
||||||
|
|
||||||
code-smell:
|
|
||||||
active: true
|
|
||||||
FeatureEnvy:
|
|
||||||
threshold: 0.5
|
|
||||||
weight: 0.45
|
|
||||||
base: 0.5
|
|
||||||
|
|
||||||
formatting:
|
|
||||||
active: true
|
|
||||||
useTabs: true
|
|
||||||
Indentation:
|
|
||||||
active: false
|
|
||||||
indentSize: 4
|
|
||||||
ConsecutiveBlankLines:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
MultipleSpaces:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
SpacingAfterComma:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
SpacingAfterKeyword:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
SpacingAroundColon:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
SpacingAroundCurlyBraces:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
SpacingAroundOperator:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
TrailingSpaces:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
UnusedImports:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
OptionalSemicolon:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
OptionalUnit:
|
|
||||||
active: true
|
|
||||||
autoCorrect: true
|
|
||||||
ExpressionBodySyntax:
|
|
||||||
active: false
|
|
||||||
autoCorrect: false
|
|
||||||
ExpressionBodySyntaxLineBreaks:
|
|
||||||
active: false
|
|
||||||
autoCorrect: false
|
|
||||||
OptionalReturnKeyword:
|
|
||||||
active: true
|
|
||||||
autoCorrect: false
|
|
||||||
|
|
||||||
style:
|
|
||||||
active: true
|
|
||||||
ReturnCount:
|
|
||||||
active: true
|
|
||||||
max: 2
|
|
||||||
NewLineAtEndOfFile:
|
|
||||||
active: true
|
|
||||||
OptionalAbstractKeyword:
|
|
||||||
active: true
|
|
||||||
OptionalWhenBraces:
|
|
||||||
active: false
|
|
||||||
EqualsNullCall:
|
|
||||||
active: false
|
|
||||||
ForbiddenComment:
|
|
||||||
active: true
|
|
||||||
values: 'TODO:,FIXME:,STOPSHIP:'
|
|
||||||
ForbiddenImport:
|
|
||||||
active: false
|
|
||||||
imports: ''
|
|
||||||
PackageDeclarationStyle:
|
|
||||||
active: false
|
|
||||||
ModifierOrder:
|
|
||||||
active: true
|
|
||||||
MagicNumber:
|
|
||||||
active: true
|
|
||||||
ignoreNumbers: '-1,0,1,2'
|
|
||||||
ignoreHashCodeFunction: false
|
|
||||||
ignorePropertyDeclaration: false
|
|
||||||
ignoreAnnotation: false
|
|
||||||
WildcardImport:
|
|
||||||
active: true
|
|
||||||
SafeCast:
|
|
||||||
active: true
|
|
||||||
MaxLineLength:
|
|
||||||
active: true
|
|
||||||
maxLineLength: 120
|
|
||||||
excludePackageStatements: false
|
|
||||||
excludeImportStatements: false
|
|
||||||
PackageNaming:
|
|
||||||
active: true
|
|
||||||
packagePattern: '^[a-z]+(\.[a-z][a-z0-9]*)*$'
|
|
||||||
ClassNaming:
|
|
||||||
active: true
|
|
||||||
classPattern: '[A-Z$][a-zA-Z$]*'
|
|
||||||
EnumNaming:
|
|
||||||
active: true
|
|
||||||
enumEntryPattern: '^[A-Z$][a-zA-Z_$]*$'
|
|
||||||
FunctionNaming:
|
|
||||||
active: true
|
|
||||||
functionPattern: '^[a-z$][a-zA-Z$0-9]*$'
|
|
||||||
FunctionMaxLength:
|
|
||||||
active: false
|
|
||||||
maximumFunctionNameLength: 30
|
|
||||||
FunctionMinLength:
|
|
||||||
active: false
|
|
||||||
minimumFunctionNameLength: 3
|
|
||||||
VariableNaming:
|
|
||||||
active: true
|
|
||||||
variablePattern: '^(_)?[a-z$][a-zA-Z$0-9]*$'
|
|
||||||
ConstantNaming:
|
|
||||||
active: true
|
|
||||||
constantPattern: '^([A-Z_]*|serialVersionUID)$'
|
|
||||||
VariableMaxLength:
|
|
||||||
active: false
|
|
||||||
maximumVariableNameLength: 30
|
|
||||||
VariableMinLength:
|
|
||||||
active: false
|
|
||||||
minimumVariableNameLength: 3
|
|
||||||
ForbiddenClassName:
|
|
||||||
active: false
|
|
||||||
forbiddenName: ''
|
|
||||||
ProtectedMemberInFinalClass:
|
|
||||||
active: false
|
|
||||||
UnnecessaryParentheses:
|
|
||||||
active: false
|
|
||||||
DataClassContainsFunctions:
|
|
||||||
active: false
|
|
||||||
UseDataClass:
|
|
||||||
active: false
|
|
||||||
UnnecessaryAbstractClass:
|
|
||||||
active: false
|
|
||||||
|
|
||||||
comments:
|
|
||||||
active: true
|
|
||||||
CommentOverPrivateMethod:
|
|
||||||
active: true
|
|
||||||
CommentOverPrivateProperty:
|
|
||||||
active: true
|
|
||||||
UndocumentedPublicClass:
|
|
||||||
active: false
|
|
||||||
searchInNestedClass: true
|
|
||||||
searchInInnerClass: true
|
|
||||||
searchInInnerObject: true
|
|
||||||
searchInInnerInterface: true
|
|
||||||
UndocumentedPublicFunction:
|
|
||||||
active: false
|
|
||||||
|
|
||||||
# *experimental feature*
|
|
||||||
# Migration rules can be defined in the same config file or a new one
|
|
||||||
migration:
|
|
||||||
active: true
|
|
||||||
imports:
|
|
||||||
# your.package.Class: new.package.or.Class
|
|
||||||
# for example:
|
|
||||||
# io.gitlab.arturbosch.detekt.api.Rule: io.gitlab.arturbosch.detekt.rule.Rule
|
|
||||||
@@ -1,6 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "training_dummy"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Gary Tierney",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
}
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "emote_tab"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Gary Tierney",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
}
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "following"
|
|
||||||
authors = [
|
|
||||||
"Gary Tierney",
|
|
||||||
]
|
dependencies {
|
||||||
dependencies = [
|
implementation project(':game')
|
||||||
"entity:walk-to",
|
implementation project(':cache')
|
||||||
"entity:player-action",
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
}
|
implementation project(':game:plugin:entity:walk-to')
|
||||||
|
implementation project(':game:plugin:entity:player-action')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "player_action"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Gary Tierney",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
}
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "spawning"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Gary Tierney",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
dependencies = [
|
implementation project(':net')
|
||||||
"api",
|
implementation project(':util')
|
||||||
]
|
implementation project(':game:plugin:api')
|
||||||
}
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "walkto"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Gary Tierney",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
}
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "al_kharid"
|
|
||||||
authors = [
|
|
||||||
"Jesse W",
|
|
||||||
"Arham 4"
|
dependencies {
|
||||||
]
|
implementation project(':game')
|
||||||
dependencies = [
|
implementation project(':cache')
|
||||||
"entity:spawn", "shops"
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
}
|
implementation project(':game:plugin:entity:spawn')
|
||||||
|
implementation project(':game:plugin:shops')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "edgeville"
|
|
||||||
authors = [
|
|
||||||
"Jesse W",
|
|
||||||
"Arham 4"
|
dependencies {
|
||||||
]
|
implementation project(':game')
|
||||||
dependencies = [
|
implementation project(':cache')
|
||||||
"entity:spawn", "shops"
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
}
|
implementation project(':game:plugin:entity:spawn')
|
||||||
|
implementation project(':game:plugin:shops')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "falador"
|
|
||||||
authors = [
|
|
||||||
"Jesse W",
|
|
||||||
"Arham 4"
|
dependencies {
|
||||||
]
|
implementation project(':game')
|
||||||
dependencies = [
|
implementation project(':cache')
|
||||||
"entity:spawn", "shops"
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
}
|
implementation project(':game:plugin:entity:spawn')
|
||||||
|
implementation project(':game:plugin:shops')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "lumbridge"
|
|
||||||
authors = [
|
|
||||||
"Gary Tierney",
|
|
||||||
"Arham 4"
|
dependencies {
|
||||||
]
|
implementation project(':game')
|
||||||
dependencies = [
|
implementation project(':cache')
|
||||||
"entity:spawn", "shops"
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
}
|
implementation project(':game:plugin:entity:spawn')
|
||||||
|
implementation project(':game:plugin:shops')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "tutorial_island_npc_spawns"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Jesse W",
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
dependencies = [
|
implementation project(':net')
|
||||||
"entity:spawn",
|
implementation project(':util')
|
||||||
]
|
implementation project(':game:plugin:entity:spawn')
|
||||||
}
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "varrock"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Jesse W",
|
implementation project(':game')
|
||||||
"Major",
|
implementation project(':cache')
|
||||||
"tlf30",
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
dependencies = [
|
implementation project(':game:plugin:entity:spawn')
|
||||||
"entity:spawn", "shops"
|
implementation project(':game:plugin:shops')
|
||||||
]
|
testImplementation project(':game:plugin-testing')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "logout"
|
|
||||||
}
|
dependencies {
|
||||||
|
implementation project(':game')
|
||||||
|
implementation project(':cache')
|
||||||
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "door"
|
|
||||||
dependencies = ["api"]
|
dependencies {
|
||||||
authors = [
|
implementation project(':game')
|
||||||
"Shiver",
|
implementation project(':cache')
|
||||||
"Arin"
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
}
|
implementation project(':game:plugin:api')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "run"
|
|
||||||
}
|
dependencies {
|
||||||
|
implementation project(':game')
|
||||||
|
implementation project(':cache')
|
||||||
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "shops"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Stuart",
|
implementation project(':game')
|
||||||
"Major",
|
implementation project(':cache')
|
||||||
"tlf30"
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
dependencies = [
|
implementation project(':game:plugin:api')
|
||||||
"api",
|
testImplementation project(':game:plugin-testing')
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "fishing_skill"
|
|
||||||
authors = [
|
|
||||||
"Linux",
|
|
||||||
"Major",
|
dependencies {
|
||||||
"tlf30"
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
dependencies = [
|
implementation project(':net')
|
||||||
"api",
|
implementation project(':util')
|
||||||
"entity:spawn",
|
implementation project(':game:plugin:api')
|
||||||
]
|
implementation project(':game:plugin:entity:spawn')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "herblore_skill"
|
|
||||||
authors = [
|
|
||||||
"Chivvon",
|
|
||||||
"Chris Fletcher",
|
|
||||||
"Major"
|
|
||||||
]
|
|
||||||
|
|
||||||
dependencies = ["api"]
|
dependencies {
|
||||||
|
implementation project(':game')
|
||||||
|
implementation project(':cache')
|
||||||
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
implementation project(':game:plugin:api')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,14 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "mining-skill"
|
|
||||||
authors = [
|
|
||||||
"Graham",
|
|
||||||
"Mikey`",
|
|
||||||
"Major",
|
|
||||||
"WH:II:DOW",
|
|
||||||
"Requa",
|
|
||||||
"Clifton",
|
|
||||||
"tlf30"
|
|
||||||
]
|
|
||||||
|
|
||||||
dependencies = ["api"]
|
dependencies {
|
||||||
}
|
implementation project(':game')
|
||||||
|
implementation project(':cache')
|
||||||
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
implementation project(':game:plugin:api')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "prayer_skill"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"Major",
|
implementation project(':game')
|
||||||
"010253",
|
implementation project(':cache')
|
||||||
"tlf30"
|
implementation project(':net')
|
||||||
]
|
implementation project(':util')
|
||||||
dependencies = [
|
implementation project(':game:plugin:api')
|
||||||
"api"
|
testImplementation project(':game:plugin-testing')
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "runecrafting-skill"
|
|
||||||
authors = [
|
|
||||||
"Major",
|
|
||||||
"BugCrusher",
|
|
||||||
"tlf30"
|
|
||||||
]
|
|
||||||
|
|
||||||
dependencies = [
|
dependencies {
|
||||||
"api"
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
}
|
implementation project(':net')
|
||||||
|
implementation project(':util')
|
||||||
|
implementation project(':game:plugin:api')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
plugin {
|
apply plugin: 'kotlin'
|
||||||
name = "woodcutting_skill"
|
|
||||||
authors = [
|
dependencies {
|
||||||
"tlf30"
|
implementation project(':game')
|
||||||
]
|
implementation project(':cache')
|
||||||
dependencies = ["api"]
|
implementation project(':net')
|
||||||
}
|
implementation project(':util')
|
||||||
|
implementation project(':game:plugin:api')
|
||||||
|
testImplementation project(':game:plugin-testing')
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
def detektAggregateReport = "$rootDir/reports/detekt-report.xml"
|
||||||
|
|
||||||
|
detekt {
|
||||||
|
version = detektVersion
|
||||||
|
|
||||||
|
defaultProfile {
|
||||||
|
output = file("$buildDir/reports")
|
||||||
|
outputName = "detekt-report"
|
||||||
|
config = file("$rootDir/gradle/config/detekt.yml")
|
||||||
|
parallel = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
detekt group: 'io.gitlab.arturbosch.detekt', name: 'detekt-formatting', version: detektVersion
|
||||||
|
}
|
||||||
|
|
||||||
|
sonarqube {
|
||||||
|
properties {
|
||||||
|
property "sonar.kotlin.detekt.reportPaths", detektAggregateReport
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks["sonarqube"].dependsOn(detektCheck)
|
||||||
@@ -0,0 +1,474 @@
|
|||||||
|
autoCorrect: true
|
||||||
|
failFast: false
|
||||||
|
|
||||||
|
test-pattern: # Configure exclusions for test sources
|
||||||
|
active: true
|
||||||
|
patterns: # Test file regexes
|
||||||
|
- '.*/test/.*'
|
||||||
|
- '.*Test.kt'
|
||||||
|
- '.*Spec.kt'
|
||||||
|
exclude-rule-sets:
|
||||||
|
- 'comments'
|
||||||
|
exclude-rules:
|
||||||
|
- 'NamingRules'
|
||||||
|
- 'WildcardImport'
|
||||||
|
- 'MagicNumber'
|
||||||
|
- 'MaxLineLength'
|
||||||
|
- 'LateinitUsage'
|
||||||
|
- 'StringLiteralDuplication'
|
||||||
|
- 'SpreadOperator'
|
||||||
|
- 'TooManyFunctions'
|
||||||
|
- 'ForEachOnRange'
|
||||||
|
|
||||||
|
build:
|
||||||
|
maxIssues: -1
|
||||||
|
weights:
|
||||||
|
# complexity: 2
|
||||||
|
# LongParameterList: 1
|
||||||
|
# style: 1
|
||||||
|
# comments: 1
|
||||||
|
|
||||||
|
processors:
|
||||||
|
active: true
|
||||||
|
exclude:
|
||||||
|
# - 'FunctionCountProcessor'
|
||||||
|
# - 'PropertyCountProcessor'
|
||||||
|
# - 'ClassCountProcessor'
|
||||||
|
# - 'PackageCountProcessor'
|
||||||
|
# - 'KtFileCountProcessor'
|
||||||
|
|
||||||
|
console-reports:
|
||||||
|
active: true
|
||||||
|
exclude:
|
||||||
|
# - 'ProjectStatisticsReport'
|
||||||
|
# - 'ComplexityReport'
|
||||||
|
# - 'NotificationReport'
|
||||||
|
# - 'FindingsReport'
|
||||||
|
# - 'BuildFailureReport'
|
||||||
|
|
||||||
|
output-reports:
|
||||||
|
active: true
|
||||||
|
exclude:
|
||||||
|
# - 'HtmlOutputReport'
|
||||||
|
# - 'PlainOutputReport'
|
||||||
|
# - 'XmlOutputReport'
|
||||||
|
|
||||||
|
comments:
|
||||||
|
active: true
|
||||||
|
CommentOverPrivateFunction:
|
||||||
|
active: false
|
||||||
|
CommentOverPrivateProperty:
|
||||||
|
active: false
|
||||||
|
EndOfSentenceFormat:
|
||||||
|
active: false
|
||||||
|
endOfSentenceFormat: ([.?!][ \t\n\r\f<])|([.?!]$)
|
||||||
|
UndocumentedPublicClass:
|
||||||
|
active: false
|
||||||
|
searchInNestedClass: true
|
||||||
|
searchInInnerClass: true
|
||||||
|
searchInInnerObject: true
|
||||||
|
searchInInnerInterface: true
|
||||||
|
UndocumentedPublicFunction:
|
||||||
|
active: false
|
||||||
|
|
||||||
|
complexity:
|
||||||
|
active: true
|
||||||
|
ComplexCondition:
|
||||||
|
active: false
|
||||||
|
threshold: 4
|
||||||
|
ComplexInterface:
|
||||||
|
active: false
|
||||||
|
threshold: 10
|
||||||
|
includeStaticDeclarations: false
|
||||||
|
ComplexMethod:
|
||||||
|
active: false
|
||||||
|
threshold: 10
|
||||||
|
ignoreSingleWhenExpression: false
|
||||||
|
LabeledExpression:
|
||||||
|
active: false
|
||||||
|
LargeClass:
|
||||||
|
active: true
|
||||||
|
threshold: 150
|
||||||
|
LongMethod:
|
||||||
|
active: false
|
||||||
|
threshold: 20
|
||||||
|
LongParameterList:
|
||||||
|
active: false
|
||||||
|
threshold: 6
|
||||||
|
ignoreDefaultParameters: false
|
||||||
|
MethodOverloading:
|
||||||
|
active: false
|
||||||
|
threshold: 6
|
||||||
|
NestedBlockDepth:
|
||||||
|
active: true
|
||||||
|
threshold: 4
|
||||||
|
StringLiteralDuplication:
|
||||||
|
active: false
|
||||||
|
threshold: 3
|
||||||
|
ignoreAnnotation: true
|
||||||
|
excludeStringsWithLessThan5Characters: true
|
||||||
|
ignoreStringsRegex: '$^'
|
||||||
|
TooManyFunctions:
|
||||||
|
active: true
|
||||||
|
thresholdInFiles: 11
|
||||||
|
thresholdInClasses: 11
|
||||||
|
thresholdInInterfaces: 11
|
||||||
|
thresholdInObjects: 11
|
||||||
|
thresholdInEnums: 11
|
||||||
|
ignoreDeprecated: false
|
||||||
|
ignorePrivate: false
|
||||||
|
|
||||||
|
empty-blocks:
|
||||||
|
active: true
|
||||||
|
EmptyCatchBlock:
|
||||||
|
active: true
|
||||||
|
allowedExceptionNameRegex: "^(_|(ignore|expected).*)"
|
||||||
|
EmptyClassBlock:
|
||||||
|
active: true
|
||||||
|
EmptyDefaultConstructor:
|
||||||
|
active: true
|
||||||
|
EmptyDoWhileBlock:
|
||||||
|
active: true
|
||||||
|
EmptyElseBlock:
|
||||||
|
active: true
|
||||||
|
EmptyFinallyBlock:
|
||||||
|
active: true
|
||||||
|
EmptyForBlock:
|
||||||
|
active: true
|
||||||
|
EmptyFunctionBlock:
|
||||||
|
active: true
|
||||||
|
ignoreOverriddenFunctions: false
|
||||||
|
EmptyIfBlock:
|
||||||
|
active: true
|
||||||
|
EmptyInitBlock:
|
||||||
|
active: true
|
||||||
|
EmptyKtFile:
|
||||||
|
active: true
|
||||||
|
EmptySecondaryConstructor:
|
||||||
|
active: true
|
||||||
|
EmptyWhenBlock:
|
||||||
|
active: true
|
||||||
|
EmptyWhileBlock:
|
||||||
|
active: true
|
||||||
|
|
||||||
|
exceptions:
|
||||||
|
active: true
|
||||||
|
ExceptionRaisedInUnexpectedLocation:
|
||||||
|
active: false
|
||||||
|
methodNames: 'toString,hashCode,equals,finalize'
|
||||||
|
InstanceOfCheckForException:
|
||||||
|
active: false
|
||||||
|
NotImplementedDeclaration:
|
||||||
|
active: false
|
||||||
|
PrintStackTrace:
|
||||||
|
active: false
|
||||||
|
RethrowCaughtException:
|
||||||
|
active: false
|
||||||
|
ReturnFromFinally:
|
||||||
|
active: false
|
||||||
|
SwallowedException:
|
||||||
|
active: false
|
||||||
|
ThrowingExceptionFromFinally:
|
||||||
|
active: false
|
||||||
|
ThrowingExceptionInMain:
|
||||||
|
active: false
|
||||||
|
ThrowingExceptionsWithoutMessageOrCause:
|
||||||
|
active: false
|
||||||
|
exceptions: 'IllegalArgumentException,IllegalStateException,IOException'
|
||||||
|
ThrowingNewInstanceOfSameException:
|
||||||
|
active: false
|
||||||
|
TooGenericExceptionCaught:
|
||||||
|
active: true
|
||||||
|
exceptionNames:
|
||||||
|
- ArrayIndexOutOfBoundsException
|
||||||
|
- Error
|
||||||
|
- Exception
|
||||||
|
- IllegalMonitorStateException
|
||||||
|
- NullPointerException
|
||||||
|
- IndexOutOfBoundsException
|
||||||
|
- RuntimeException
|
||||||
|
- Throwable
|
||||||
|
TooGenericExceptionThrown:
|
||||||
|
active: true
|
||||||
|
exceptionNames:
|
||||||
|
- Error
|
||||||
|
- Exception
|
||||||
|
- Throwable
|
||||||
|
- RuntimeException
|
||||||
|
|
||||||
|
formatting:
|
||||||
|
active: true
|
||||||
|
android: false
|
||||||
|
autoCorrect: true
|
||||||
|
ChainWrapping:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
CommentSpacing:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
Filename:
|
||||||
|
active: true
|
||||||
|
FinalNewline:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
ImportOrdering:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
Indentation:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
indentSize: 4
|
||||||
|
continuationIndentSize: 4
|
||||||
|
MaximumLineLength:
|
||||||
|
active: false
|
||||||
|
ModifierOrdering:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoBlankLineBeforeRbrace:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoConsecutiveBlankLines:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoEmptyClassBody:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoItParamInMultilineLambda:
|
||||||
|
active: false
|
||||||
|
NoLineBreakAfterElse:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoLineBreakBeforeAssignment:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoMultipleSpaces:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoSemicolons:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoTrailingSpaces:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoUnitReturn:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoUnusedImports:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
NoWildcardImports:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
ParameterListWrapping:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
indentSize: 4
|
||||||
|
SpacingAroundColon:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
SpacingAroundComma:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
SpacingAroundCurly:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
SpacingAroundKeyword:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
SpacingAroundOperators:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
SpacingAroundRangeOperator:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
StringTemplate:
|
||||||
|
active: true
|
||||||
|
autoCorrect: true
|
||||||
|
|
||||||
|
naming:
|
||||||
|
active: true
|
||||||
|
ClassNaming:
|
||||||
|
active: true
|
||||||
|
classPattern: '[A-Z$][a-zA-Z0-9$]*'
|
||||||
|
EnumNaming:
|
||||||
|
active: true
|
||||||
|
enumEntryPattern: '^[A-Z][_a-zA-Z0-9]*'
|
||||||
|
ForbiddenClassName:
|
||||||
|
active: false
|
||||||
|
forbiddenName: ''
|
||||||
|
FunctionMaxLength:
|
||||||
|
active: false
|
||||||
|
maximumFunctionNameLength: 30
|
||||||
|
FunctionMinLength:
|
||||||
|
active: false
|
||||||
|
minimumFunctionNameLength: 3
|
||||||
|
FunctionNaming:
|
||||||
|
active: true
|
||||||
|
functionPattern: '^([a-z$][a-zA-Z$0-9]*)|(`.*`)$'
|
||||||
|
excludeClassPattern: '$^'
|
||||||
|
MatchingDeclarationName:
|
||||||
|
active: true
|
||||||
|
MemberNameEqualsClassName:
|
||||||
|
active: false
|
||||||
|
ignoreOverriddenFunction: true
|
||||||
|
ObjectPropertyNaming:
|
||||||
|
active: true
|
||||||
|
propertyPattern: '[A-Za-z][_A-Za-z0-9]*'
|
||||||
|
constantPattern: '[A-Za-z][_A-Za-z0-9]*'
|
||||||
|
PackageNaming:
|
||||||
|
active: true
|
||||||
|
packagePattern: '^[a-z]+(\.[a-z][a-z0-9]*)*$'
|
||||||
|
TopLevelPropertyNaming:
|
||||||
|
active: false
|
||||||
|
constantPattern: '[A-Z][_A-Z0-9]*'
|
||||||
|
propertyPattern: '[A-Za-z][_A-Za-z0-9]*'
|
||||||
|
privatePropertyPattern: '(_)?[A-Za-z][A-Za-z0-9]*'
|
||||||
|
VariableMaxLength:
|
||||||
|
active: false
|
||||||
|
maximumVariableNameLength: 64
|
||||||
|
VariableMinLength:
|
||||||
|
active: false
|
||||||
|
minimumVariableNameLength: 1
|
||||||
|
VariableNaming:
|
||||||
|
active: false
|
||||||
|
variablePattern: '[a-z][A-Za-z0-9]*'
|
||||||
|
privateVariablePattern: '(_)?[a-z][A-Za-z0-9]*'
|
||||||
|
excludeClassPattern: '$^'
|
||||||
|
|
||||||
|
performance:
|
||||||
|
active: true
|
||||||
|
ForEachOnRange:
|
||||||
|
active: true
|
||||||
|
SpreadOperator:
|
||||||
|
active: true
|
||||||
|
UnnecessaryTemporaryInstantiation:
|
||||||
|
active: true
|
||||||
|
|
||||||
|
potential-bugs:
|
||||||
|
active: true
|
||||||
|
DuplicateCaseInWhenExpression:
|
||||||
|
active: true
|
||||||
|
EqualsAlwaysReturnsTrueOrFalse:
|
||||||
|
active: false
|
||||||
|
EqualsWithHashCodeExist:
|
||||||
|
active: true
|
||||||
|
ExplicitGarbageCollectionCall:
|
||||||
|
active: true
|
||||||
|
InvalidRange:
|
||||||
|
active: false
|
||||||
|
IteratorHasNextCallsNextMethod:
|
||||||
|
active: false
|
||||||
|
IteratorNotThrowingNoSuchElementException:
|
||||||
|
active: false
|
||||||
|
LateinitUsage:
|
||||||
|
active: false
|
||||||
|
excludeAnnotatedProperties: ""
|
||||||
|
ignoreOnClassesPattern: ""
|
||||||
|
UnconditionalJumpStatementInLoop:
|
||||||
|
active: false
|
||||||
|
UnreachableCode:
|
||||||
|
active: true
|
||||||
|
UnsafeCallOnNullableType:
|
||||||
|
active: false
|
||||||
|
UnsafeCast:
|
||||||
|
active: false
|
||||||
|
UselessPostfixExpression:
|
||||||
|
active: false
|
||||||
|
WrongEqualsTypeParameter:
|
||||||
|
active: false
|
||||||
|
|
||||||
|
style:
|
||||||
|
active: true
|
||||||
|
CollapsibleIfStatements:
|
||||||
|
active: false
|
||||||
|
DataClassContainsFunctions:
|
||||||
|
active: false
|
||||||
|
conversionFunctionPrefix: 'to'
|
||||||
|
EqualsNullCall:
|
||||||
|
active: false
|
||||||
|
ExpressionBodySyntax:
|
||||||
|
active: false
|
||||||
|
includeLineWrapping: false
|
||||||
|
ForbiddenComment:
|
||||||
|
active: true
|
||||||
|
values: 'TODO:,FIXME:,STOPSHIP:'
|
||||||
|
ForbiddenImport:
|
||||||
|
active: false
|
||||||
|
imports: ''
|
||||||
|
FunctionOnlyReturningConstant:
|
||||||
|
active: false
|
||||||
|
ignoreOverridableFunction: true
|
||||||
|
excludedFunctions: 'describeContents'
|
||||||
|
LoopWithTooManyJumpStatements:
|
||||||
|
active: false
|
||||||
|
maxJumpCount: 1
|
||||||
|
MagicNumber:
|
||||||
|
active: false
|
||||||
|
MandatoryBracesIfStatements:
|
||||||
|
active: false
|
||||||
|
MaxLineLength:
|
||||||
|
active: false
|
||||||
|
maxLineLength: 120
|
||||||
|
excludePackageStatements: false
|
||||||
|
excludeImportStatements: false
|
||||||
|
excludeCommentStatements: false
|
||||||
|
MayBeConst:
|
||||||
|
active: false
|
||||||
|
ModifierOrder:
|
||||||
|
active: true
|
||||||
|
NestedClassesVisibility:
|
||||||
|
active: false
|
||||||
|
NewLineAtEndOfFile:
|
||||||
|
active: false
|
||||||
|
NoTabs:
|
||||||
|
active: true
|
||||||
|
OptionalAbstractKeyword:
|
||||||
|
active: true
|
||||||
|
OptionalUnit:
|
||||||
|
active: false
|
||||||
|
OptionalWhenBraces:
|
||||||
|
active: false
|
||||||
|
PreferToOverPairSyntax:
|
||||||
|
active: false
|
||||||
|
ProtectedMemberInFinalClass:
|
||||||
|
active: false
|
||||||
|
RedundantVisibilityModifierRule:
|
||||||
|
active: false
|
||||||
|
ReturnCount:
|
||||||
|
active: true
|
||||||
|
max: 2
|
||||||
|
excludedFunctions: "equals"
|
||||||
|
SafeCast:
|
||||||
|
active: true
|
||||||
|
SerialVersionUIDInSerializableClass:
|
||||||
|
active: false
|
||||||
|
SpacingBetweenPackageAndImports:
|
||||||
|
active: false
|
||||||
|
ThrowsCount:
|
||||||
|
active: true
|
||||||
|
max: 2
|
||||||
|
TrailingWhitespace:
|
||||||
|
active: false
|
||||||
|
UnnecessaryAbstractClass:
|
||||||
|
active: false
|
||||||
|
UnnecessaryInheritance:
|
||||||
|
active: false
|
||||||
|
UnnecessaryParentheses:
|
||||||
|
active: false
|
||||||
|
UntilInsteadOfRangeTo:
|
||||||
|
active: false
|
||||||
|
UnusedImports:
|
||||||
|
active: false
|
||||||
|
UnusedPrivateMember:
|
||||||
|
active: false
|
||||||
|
allowedNames: "(_|ignored|expected)"
|
||||||
|
UseDataClass:
|
||||||
|
active: false
|
||||||
|
excludeAnnotatedClasses: ""
|
||||||
|
UtilityClassWithPublicConstructor:
|
||||||
|
active: false
|
||||||
|
VarCouldBeVal:
|
||||||
|
active: false
|
||||||
|
WildcardImport:
|
||||||
|
active: true
|
||||||
|
excludeImports: 'java.util.*,kotlinx.android.synthetic.*'
|
||||||
@@ -1,10 +1 @@
|
|||||||
apply plugin: 'org.jmailen.kotlinter'
|
|
||||||
|
|
||||||
kotlinter {
|
|
||||||
ignoreFailures = true
|
|
||||||
indentSize = 4
|
|
||||||
continuationIndentSize = 4
|
|
||||||
reporters = ['checkstyle', 'plain']
|
|
||||||
}
|
|
||||||
|
|
||||||
kotlin { experimental { coroutines 'enable' } }
|
kotlin { experimental { coroutines 'enable' } }
|
||||||
|
|||||||
@@ -16,4 +16,5 @@ ext {
|
|||||||
junitJupiterVersion = '5.1.0'
|
junitJupiterVersion = '5.1.0'
|
||||||
mockkVersion = '1.7.15'
|
mockkVersion = '1.7.15'
|
||||||
assertkVersion = '0.9'
|
assertkVersion = '0.9'
|
||||||
|
detektVersion = '1.0.0.RC8'
|
||||||
}
|
}
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
apply plugin: 'jacoco'
|
|
||||||
|
|
||||||
def testedProjects() {
|
|
||||||
subprojects.findAll { subproject -> subproject.plugins.hasPlugin('java') || subproject.plugins.hasPlugin('kotlin') }
|
|
||||||
}
|
|
||||||
|
|
||||||
gradle.projectsEvaluated {
|
|
||||||
configure(testedProjects()) {
|
|
||||||
apply plugin: 'jacoco'
|
|
||||||
|
|
||||||
jacoco {
|
|
||||||
toolVersion = '0.8.1'
|
|
||||||
}
|
|
||||||
|
|
||||||
jacocoTestReport {
|
|
||||||
sourceDirectories = files(sourceSets.main.allSource.srcDirs)
|
|
||||||
classDirectories = files(sourceSets.main.output)
|
|
||||||
}
|
|
||||||
|
|
||||||
test {
|
|
||||||
reports {
|
|
||||||
junitXml.enabled = true
|
|
||||||
html.enabled = false
|
|
||||||
}
|
|
||||||
|
|
||||||
jacoco {
|
|
||||||
append = false
|
|
||||||
destinationFile = file("$buildDir/jacoco/jacocoTest.exec")
|
|
||||||
classDumpDir = file("$buildDir/jacoco/classpathdumps")
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
task jacocoTestReport(type: JacocoReport) {
|
|
||||||
def tests = []
|
|
||||||
def sourceDirs = files()
|
|
||||||
def classDirs = files()
|
|
||||||
def execData = files()
|
|
||||||
|
|
||||||
reports {
|
|
||||||
xml.enabled = true
|
|
||||||
html.enabled = false
|
|
||||||
}
|
|
||||||
|
|
||||||
testedProjects().each { subproject ->
|
|
||||||
sourceDirs += files(subproject.sourceSets.main.allSource.srcDirs)
|
|
||||||
classDirs += files(subproject.sourceSets.main.output)
|
|
||||||
execData += files(subproject.tasks.jacocoTestReport.executionData.findAll {
|
|
||||||
it.exists()
|
|
||||||
})
|
|
||||||
|
|
||||||
tests += subproject.tasks.test
|
|
||||||
}
|
|
||||||
|
|
||||||
dependsOn tests
|
|
||||||
sourceDirectories = sourceDirs
|
|
||||||
classDirectories = classDirs
|
|
||||||
executionData = execData
|
|
||||||
}
|
|
||||||
|
|
||||||
sonarqube {
|
|
||||||
properties {
|
|
||||||
property "sonar.organization", "apollo-rsps"
|
|
||||||
property "sonar.projectKey", "apollo:org.apollo"
|
|
||||||
property "sonar.projectName", "Apollo RSPS"
|
|
||||||
property "sonar.kotlin.file.suffixes", ".kt,.kts"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
project.tasks["sonarqube"].dependsOn(jacocoTestReport)
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
apply plugin: 'jacoco'
|
||||||
|
|
||||||
|
def jacocoCoverageAggregate = "$buildDir/jacoco/jacocoTestAll.exec"
|
||||||
|
|
||||||
|
def testedProjects() {
|
||||||
|
subprojects.findAll { subproject -> subproject.plugins.hasPlugin('java') || subproject.plugins.hasPlugin('kotlin') }
|
||||||
|
}
|
||||||
|
|
||||||
|
configure(testedProjects()) {
|
||||||
|
|
||||||
|
jacoco {
|
||||||
|
toolVersion = '0.8.1'
|
||||||
|
}
|
||||||
|
|
||||||
|
jacocoTestReport {
|
||||||
|
sourceDirectories = files(sourceSets.main.allSource.srcDirs)
|
||||||
|
classDirectories = files(sourceSets.main.output)
|
||||||
|
}
|
||||||
|
|
||||||
|
test {
|
||||||
|
reports {
|
||||||
|
junitXml.enabled = true
|
||||||
|
html.enabled = false
|
||||||
|
}
|
||||||
|
|
||||||
|
jacoco {
|
||||||
|
append = false
|
||||||
|
destinationFile = file("$buildDir/jacoco/jacocoTest.exec")
|
||||||
|
classDumpDir = file("$buildDir/jacoco/classpathdumps")
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
task jacocoMerge(type: JacocoMerge) {
|
||||||
|
destinationFile = file(jacocoCoverageAggregate)
|
||||||
|
executionData = project.fileTree(dir: '.', include: '**/build/jacoco/test.exec')
|
||||||
|
}
|
||||||
|
|
||||||
|
sonarqube {
|
||||||
|
properties {
|
||||||
|
property "sonar.organization", "apollo-rsps"
|
||||||
|
property "sonar.projectKey", "apollo:org.apollo"
|
||||||
|
property "sonar.projectName", "Apollo RSPS"
|
||||||
|
property "sonar.kotlin.file.suffixes", ".kt,.kts"
|
||||||
|
property "sonar.jacoco.reportPaths", jacocoCoverageAggregate
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks["sonarqube"].dependsOn(jacocoMerge)
|
||||||
|
|
||||||
+5
-1
@@ -10,5 +10,9 @@ dependencies {
|
|||||||
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
||||||
implementation group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: bouncycastleVersion
|
implementation group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: bouncycastleVersion
|
||||||
|
|
||||||
testImplementation group: 'junit', name: 'junit', version: junitVersion
|
test.useJUnitPlatform()
|
||||||
|
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: junitJupiterVersion
|
||||||
|
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: junitJupiterVersion
|
||||||
|
testImplementation group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVintageVersion
|
||||||
|
testImplementation group: 'org.junit.platform', name: 'junit-platform-launcher', version: junitPlatformVersion
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-1
@@ -9,7 +9,11 @@ dependencies {
|
|||||||
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
implementation group: 'com.google.guava', name: 'guava', version: guavaVersion
|
||||||
implementation group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: bouncycastleVersion
|
implementation group: 'org.bouncycastle', name: 'bcprov-jdk15on', version: bouncycastleVersion
|
||||||
|
|
||||||
testImplementation group: 'junit', name: 'junit', version: junitVersion
|
test.useJUnitPlatform()
|
||||||
|
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: junitJupiterVersion
|
||||||
|
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: junitJupiterVersion
|
||||||
|
testImplementation group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVintageVersion
|
||||||
|
testImplementation group: 'org.junit.platform', name: 'junit-platform-launcher', version: junitPlatformVersion
|
||||||
}
|
}
|
||||||
|
|
||||||
task(genRsa, dependsOn: classes, type: JavaExec) {
|
task(genRsa, dependsOn: classes, type: JavaExec) {
|
||||||
|
|||||||
Reference in New Issue
Block a user