From eae247954f18a9a5fbc240dfb6cb854a7d449328 Mon Sep 17 00:00:00 2001 From: Jason Penilla <11360596+jpenilla@users.noreply.github.com> Date: Thu, 10 Mar 2022 14:49:12 -0700 Subject: [PATCH] build and publishing updates --- .github/workflows/build.yml | 6 + build-logic/build.gradle.kts | 3 + build-logic/src/main/kotlin/Versions.kt | 39 ---- .../kotlin/cloud.base-conventions.gradle.kts | 18 +- build-logic/src/main/kotlin/extensions.kt | 11 +- build.gradle.kts | 7 - cloud-annotations/build.gradle.kts | 4 + cloud-core/build.gradle.kts | 12 +- cloud-discord/cloud-javacord/build.gradle.kts | 6 +- cloud-discord/cloud-jda/build.gradle.kts | 6 +- cloud-irc/cloud-pircbotx/build.gradle.kts | 6 +- .../cloud-brigadier/build.gradle.kts | 8 +- cloud-minecraft/cloud-bukkit/build.gradle.kts | 12 +- cloud-minecraft/cloud-bungee/build.gradle.kts | 6 +- .../cloud-cloudburst/build.gradle.kts | 6 +- cloud-minecraft/cloud-fabric/build.gradle.kts | 15 +- .../cloud-minecraft-extras/build.gradle.kts | 8 +- cloud-minecraft/cloud-paper/build.gradle.kts | 12 +- .../cloud-sponge7/build.gradle.kts | 6 +- .../cloud-velocity/build.gradle.kts | 6 +- cloud-services/build.gradle.kts | 8 +- cloud-tasks/build.gradle.kts | 3 + examples/example-bukkit/build.gradle.kts | 6 +- examples/example-bungee/build.gradle.kts | 2 +- examples/example-velocity/build.gradle.kts | 5 +- gradle.properties | 4 + gradle/libs.versions.yml | 189 +++++++++++++++++- 27 files changed, 314 insertions(+), 100 deletions(-) delete mode 100644 build-logic/src/main/kotlin/Versions.kt diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4c6f608c..92ec076f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -35,6 +35,12 @@ jobs: else echo "STATUS=release" >> $GITHUB_ENV fi + - name: Publish Snapshot + if: "${{ env.STATUS != 'release' && github.event_name == 'push' && github.ref == 'refs/heads/1.7.0-dev' }}" + run: ./gradlew publish + env: + ORG_GRADLE_PROJECT_sonatypeUsername: "${{ secrets.SONATYPE_USERNAME }}" + ORG_GRADLE_PROJECT_sonatypePassword: "${{ secrets.SONATYPE_PASSWORD }}" - name: Publish Release if: "${{ env.STATUS == 'release' && github.event_name == 'release' }}" run: ./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository -PreleasePublishing diff --git a/build-logic/build.gradle.kts b/build-logic/build.gradle.kts index e645eb2b..21bd8ed9 100644 --- a/build-logic/build.gradle.kts +++ b/build-logic/build.gradle.kts @@ -16,4 +16,7 @@ dependencies { implementation(libs.gradleKotlinJvm) implementation(libs.gradleDokka) implementation(libs.gradleKtlint) + + // https://github.com/gradle/gradle/issues/15383#issuecomment-779893192 + implementation(files(libs.javaClass.superclass.protectionDomain.codeSource.location)) } diff --git a/build-logic/src/main/kotlin/Versions.kt b/build-logic/src/main/kotlin/Versions.kt deleted file mode 100644 index df6c55c6..00000000 --- a/build-logic/src/main/kotlin/Versions.kt +++ /dev/null @@ -1,39 +0,0 @@ -object Versions { - const val checkerQual = "3.21.0" - const val geantyref = "1.3.13" - const val errorprone = "2.9.0" - - // INTEGRATION DEPENDENCIES - const val guice = "4.2.3" - - // DISCORD DEPENDENCIES - const val javacord = "3.1.1" - const val jda = "4.2.1_257" - - // MINECRAFT DEPENDENCIES - const val brigadier = "1.0.17" - const val bukkit = "1.13.2-R0.1-SNAPSHOT" - const val commodore = "1.13" - const val bungeecord = "1.8-SNAPSHOT" - const val cloudburst = "1.0.0-SNAPSHOT" - const val adventureApi = "4.9.3" - const val adventurePlatform = "4.0.1" - const val paperApi = "1.16.5-R0.1-SNAPSHOT" - const val velocityApi = "3.1.0" - const val spongeApi7 = "7.3.0" - const val jetbrainsAnnotations = "23.0.0" - const val guava = "21.0-jre" - const val fabricLoader = "0.12.11" - const val fabricMc = "1.16.5" - const val fabricApi = "0.31.0+1.16" - - // IRC DEPENDENCIES - const val pircbotx = "479835f008" - - // TEST DEPENDENCIES - const val jupiterEngine = "5.8.1" - const val jmh = "1.27" - const val mockitoCore = "4.1.0" - const val mockitoKotlin = "4.0.0" - const val truth = "1.1.3" -} diff --git a/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts b/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts index 63704c33..604d34d7 100644 --- a/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts +++ b/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts @@ -16,7 +16,7 @@ indra { testWith(8, 11, 17) } - checkstyle("9.0") + checkstyle(libs.versions.checkstyle.get()) } /* Disable checkstyle on tests */ @@ -93,13 +93,13 @@ repositories { } dependencies { - compileOnlyApi("org.checkerframework", "checker-qual", Versions.checkerQual) - testImplementation("org.junit.jupiter", "junit-jupiter-engine", Versions.jupiterEngine) - testImplementation("org.mockito", "mockito-core", Versions.mockitoCore) - testImplementation("org.mockito.kotlin", "mockito-kotlin", Versions.mockitoKotlin) - testImplementation("com.google.truth", "truth", Versions.truth) - testImplementation("com.google.truth.extensions", "truth-java8-extension", Versions.truth) - errorprone("com.google.errorprone", "error_prone_core", Versions.errorprone) + compileOnlyApi(libs.checkerQual) + testImplementation(libs.jupiterEngine) + testImplementation(libs.mockitoCore) + testImplementation(libs.mockitoKotlin) + testImplementation(libs.truth) + testImplementation(libs.truthJava8) + errorprone(libs.errorproneCore) // Silences compiler warnings from guava using errorprone - compileOnly("com.google.errorprone", "error_prone_annotations", Versions.errorprone) + compileOnly(libs.errorproneAnnotations) } diff --git a/build-logic/src/main/kotlin/extensions.kt b/build-logic/src/main/kotlin/extensions.kt index a051ccb9..274f1b3b 100644 --- a/build-logic/src/main/kotlin/extensions.kt +++ b/build-logic/src/main/kotlin/extensions.kt @@ -1,12 +1,17 @@ +import org.gradle.accessors.dm.LibrariesForLibs import org.gradle.api.Project import org.gradle.api.provider.Provider +import org.gradle.kotlin.dsl.the // set by GitHub Actions val Project.ci: Provider get() = providers.environmentVariable("CI") - .map { it.toBoolean() } - .orElse(false) + .map { it.toBoolean() } + .orElse(false) val Project.compileExamples: Boolean get() = providers.gradleProperty("compile-examples") - .isPresent + .isPresent + +val Project.libs: LibrariesForLibs + get() = the() diff --git a/build.gradle.kts b/build.gradle.kts index 0e1b8f25..b03d4218 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -3,14 +3,7 @@ plugins { id("com.github.ben-manes.versions") } -group = "cloud.commandframework" -version = "1.7.0-SNAPSHOT" -description = "Command framework and dispatcher for the JVM" - subprojects { - if (name != "cloud-bom") { - apply(plugin = "cloud.base-conventions") - } if (!name.startsWith("example-")) { apply(plugin = "cloud.publishing-conventions") } diff --git a/cloud-annotations/build.gradle.kts b/cloud-annotations/build.gradle.kts index bbb02b05..b5354cfd 100644 --- a/cloud-annotations/build.gradle.kts +++ b/cloud-annotations/build.gradle.kts @@ -1,3 +1,7 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { implementation(projects.cloudCore) } diff --git a/cloud-core/build.gradle.kts b/cloud-core/build.gradle.kts index 3a866d6d..69bc8dc3 100644 --- a/cloud-core/build.gradle.kts +++ b/cloud-core/build.gradle.kts @@ -1,7 +1,11 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudServices) - compileOnly("com.google.inject", "guice", Versions.guice) - testImplementation("org.openjdk.jmh", "jmh-core", Versions.jmh) - testImplementation("org.openjdk.jmh", "jmh-generator-annprocess", Versions.jmh) - testImplementation("com.google.inject", "guice", Versions.guice) + compileOnly(libs.guice) + testImplementation(libs.jmhCore) + testImplementation(libs.jmhGeneratorAnnprocess) + testImplementation(libs.guice) } diff --git a/cloud-discord/cloud-javacord/build.gradle.kts b/cloud-discord/cloud-javacord/build.gradle.kts index af17c9c7..a9125f22 100644 --- a/cloud-discord/cloud-javacord/build.gradle.kts +++ b/cloud-discord/cloud-javacord/build.gradle.kts @@ -1,4 +1,8 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) - implementation("org.javacord", "javacord", Versions.javacord) + implementation(libs.javacord) } diff --git a/cloud-discord/cloud-jda/build.gradle.kts b/cloud-discord/cloud-jda/build.gradle.kts index 6a457e62..8cc1274d 100644 --- a/cloud-discord/cloud-jda/build.gradle.kts +++ b/cloud-discord/cloud-jda/build.gradle.kts @@ -1,4 +1,8 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) - compileOnly ("net.dv8tion", "JDA", Versions.jda) + compileOnly (libs.jda) } diff --git a/cloud-irc/cloud-pircbotx/build.gradle.kts b/cloud-irc/cloud-pircbotx/build.gradle.kts index 9b95b038..344c94f1 100644 --- a/cloud-irc/cloud-pircbotx/build.gradle.kts +++ b/cloud-irc/cloud-pircbotx/build.gradle.kts @@ -1,4 +1,8 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) - implementation("com.github.pircbotx", "pircbotx", Versions.pircbotx) + implementation(libs.pircbotx) } diff --git a/cloud-minecraft/cloud-brigadier/build.gradle.kts b/cloud-minecraft/cloud-brigadier/build.gradle.kts index 249a377d..9985c16a 100644 --- a/cloud-minecraft/cloud-brigadier/build.gradle.kts +++ b/cloud-minecraft/cloud-brigadier/build.gradle.kts @@ -1,6 +1,10 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { implementation(projects.cloudCore) /* Needs to be provided by the platform */ - compileOnly("com.mojang", "brigadier", Versions.brigadier) - testImplementation("com.mojang", "brigadier", Versions.brigadier) + compileOnly(libs.brigadier) + testImplementation(libs.brigadier) } diff --git a/cloud-minecraft/cloud-bukkit/build.gradle.kts b/cloud-minecraft/cloud-bukkit/build.gradle.kts index 0156bfbf..ac83f669 100644 --- a/cloud-minecraft/cloud-bukkit/build.gradle.kts +++ b/cloud-minecraft/cloud-bukkit/build.gradle.kts @@ -1,9 +1,13 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) api(projects.cloudBrigadier) api(projects.cloudTasks) - compileOnly("org.bukkit", "bukkit", Versions.bukkit) - compileOnly("me.lucko", "commodore", Versions.commodore) - compileOnly("org.jetbrains", "annotations", Versions.jetbrainsAnnotations) - compileOnly("com.google.guava", "guava", Versions.guava) + compileOnly(libs.bukkit) + compileOnly(libs.commodore) + compileOnly(libs.jetbrainsAnnotations) + compileOnly(libs.guava) } diff --git a/cloud-minecraft/cloud-bungee/build.gradle.kts b/cloud-minecraft/cloud-bungee/build.gradle.kts index 6bd1c5ca..a423d1d4 100644 --- a/cloud-minecraft/cloud-bungee/build.gradle.kts +++ b/cloud-minecraft/cloud-bungee/build.gradle.kts @@ -1,4 +1,8 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) - compileOnly("net.md-5", "bungeecord-api", Versions.bungeecord) + compileOnly(libs.bungeecord) } diff --git a/cloud-minecraft/cloud-cloudburst/build.gradle.kts b/cloud-minecraft/cloud-cloudburst/build.gradle.kts index 52d0fccb..5720aabd 100644 --- a/cloud-minecraft/cloud-cloudburst/build.gradle.kts +++ b/cloud-minecraft/cloud-cloudburst/build.gradle.kts @@ -1,4 +1,8 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) - compileOnly("org.cloudburstmc", "cloudburst-server", Versions.cloudburst) + compileOnly(libs.cloudburst) } diff --git a/cloud-minecraft/cloud-fabric/build.gradle.kts b/cloud-minecraft/cloud-fabric/build.gradle.kts index 6d57af56..5a29e8f6 100644 --- a/cloud-minecraft/cloud-fabric/build.gradle.kts +++ b/cloud-minecraft/cloud-fabric/build.gradle.kts @@ -2,6 +2,7 @@ import net.fabricmc.loom.task.AbstractRunTask import net.ltgt.gradle.errorprone.errorprone plugins { + id("cloud.base-conventions") id("quiet-fabric-loom") version "0.11-SNAPSHOT" } @@ -40,19 +41,21 @@ tasks { } dependencies { - minecraft("com.mojang", "minecraft", Versions.fabricMc) + minecraft(libs.fabricMinecraft) mappings(loom.officialMojangMappings()) - modImplementation("net.fabricmc", "fabric-loader", Versions.fabricLoader) - modImplementation(fabricApi.module("fabric-command-api-v1", Versions.fabricApi)) - modImplementation(fabricApi.module("fabric-lifecycle-events-v1", Versions.fabricApi)) + modImplementation(libs.fabricLoader) + modImplementation(fabricApi.module("fabric-command-api-v1", libs.versions.fabricApi.get())) + modImplementation(fabricApi.module("fabric-lifecycle-events-v1", libs.versions.fabricApi.get())) - modApi(include("me.lucko", "fabric-permissions-api", "0.1-SNAPSHOT")) + modImplementation(libs.fabricPermissionsApi) + include(libs.fabricPermissionsApi) api(include(projects.cloudCore)!!) api(include(projects.cloudBrigadier)!!) api(include(projects.cloudServices)!!) - api(include("io.leangen.geantyref", "geantyref", Versions.geantyref)) + api(libs.geantyref) + include(libs.geantyref) } /* set up a testmod source set */ diff --git a/cloud-minecraft/cloud-minecraft-extras/build.gradle.kts b/cloud-minecraft/cloud-minecraft-extras/build.gradle.kts index 48191a9c..ee9e46ad 100644 --- a/cloud-minecraft/cloud-minecraft-extras/build.gradle.kts +++ b/cloud-minecraft/cloud-minecraft-extras/build.gradle.kts @@ -1,5 +1,9 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) - api("net.kyori", "adventure-api", Versions.adventureApi) - api("net.kyori", "adventure-text-serializer-plain", Versions.adventureApi) + api(libs.adventureApi) + api(libs.adventureTextSerializerPlain) } diff --git a/cloud-minecraft/cloud-paper/build.gradle.kts b/cloud-minecraft/cloud-paper/build.gradle.kts index 3a03b9df..6fc0ab47 100644 --- a/cloud-minecraft/cloud-paper/build.gradle.kts +++ b/cloud-minecraft/cloud-paper/build.gradle.kts @@ -1,7 +1,11 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudBukkit) - compileOnly("com.destroystokyo.paper", "paper-api", Versions.paperApi) - compileOnly("com.destroystokyo.paper", "paper-mojangapi", Versions.paperApi) - compileOnly("org.jetbrains", "annotations", Versions.jetbrainsAnnotations) - compileOnly("com.google.guava", "guava", Versions.guava) + compileOnly(libs.paperApi) + compileOnly(libs.paperMojangApi) + compileOnly(libs.jetbrainsAnnotations) + compileOnly(libs.guava) } diff --git a/cloud-minecraft/cloud-sponge7/build.gradle.kts b/cloud-minecraft/cloud-sponge7/build.gradle.kts index 7e14aedf..34ddccb7 100644 --- a/cloud-minecraft/cloud-sponge7/build.gradle.kts +++ b/cloud-minecraft/cloud-sponge7/build.gradle.kts @@ -1,4 +1,8 @@ +plugins { + id("cloud.base-conventions") +} + dependencies { api(projects.cloudCore) - compileOnly("org.spongepowered", "spongeapi", Versions.spongeApi7) + compileOnly(libs.spongeApi7) } diff --git a/cloud-minecraft/cloud-velocity/build.gradle.kts b/cloud-minecraft/cloud-velocity/build.gradle.kts index 49e7d657..77c8fe27 100644 --- a/cloud-minecraft/cloud-velocity/build.gradle.kts +++ b/cloud-minecraft/cloud-velocity/build.gradle.kts @@ -1,3 +1,7 @@ +plugins { + id("cloud.base-conventions") +} + java { disableAutoTargetJvm() } @@ -5,5 +9,5 @@ java { dependencies { api(projects.cloudCore) api(projects.cloudBrigadier) - compileOnly("com.velocitypowered", "velocity-api", Versions.velocityApi) + compileOnly(libs.velocityApi) } diff --git a/cloud-services/build.gradle.kts b/cloud-services/build.gradle.kts index f42c73e3..1b8ee32b 100644 --- a/cloud-services/build.gradle.kts +++ b/cloud-services/build.gradle.kts @@ -1,3 +1,7 @@ -dependencies { - api("io.leangen.geantyref", "geantyref", Versions.geantyref) +plugins { + id("cloud.base-conventions") +} + +dependencies { + api(libs.geantyref) } diff --git a/cloud-tasks/build.gradle.kts b/cloud-tasks/build.gradle.kts index e69de29b..b826e0db 100644 --- a/cloud-tasks/build.gradle.kts +++ b/cloud-tasks/build.gradle.kts @@ -0,0 +1,3 @@ +plugins { + id("cloud.base-conventions") +} diff --git a/examples/example-bukkit/build.gradle.kts b/examples/example-bukkit/build.gradle.kts index fb6e22fe..0e4c2a39 100644 --- a/examples/example-bukkit/build.gradle.kts +++ b/examples/example-bukkit/build.gradle.kts @@ -12,12 +12,12 @@ dependencies { implementation(project(":cloud-annotations")) implementation(project(":cloud-minecraft-extras")) /* Extras */ - implementation("me.lucko", "commodore", Versions.commodore) { + implementation(libs.commodore) { isTransitive = false } - implementation("net.kyori", "adventure-platform-bukkit", Versions.adventurePlatform) + implementation(libs.adventurePlatformBukkit) /* Bukkit */ - compileOnly("org.bukkit", "bukkit", Versions.bukkit) + compileOnly(libs.bukkit) } tasks { diff --git a/examples/example-bungee/build.gradle.kts b/examples/example-bungee/build.gradle.kts index 6f79a69f..4c644f58 100644 --- a/examples/example-bungee/build.gradle.kts +++ b/examples/example-bungee/build.gradle.kts @@ -20,7 +20,7 @@ dependencies { implementation(project(":cloud-annotations")) implementation(project(":cloud-minecraft-extras")) /* Extras */ - implementation("net.kyori", "adventure-platform-bungeecord", Versions.adventurePlatform) + implementation(libs.adventurePlatformBungeecord) /* Bungee*/ compileOnly("net.md-5", "bungeecord-api", "1.8-SNAPSHOT") } diff --git a/examples/example-velocity/build.gradle.kts b/examples/example-velocity/build.gradle.kts index 4a420b6b..7162adcf 100644 --- a/examples/example-velocity/build.gradle.kts +++ b/examples/example-velocity/build.gradle.kts @@ -69,6 +69,7 @@ dependencies { api(project(":cloud-velocity")) api(project(":cloud-minecraft-extras")) api(project(":cloud-annotations")) - annotationProcessor(compileOnly("com.velocitypowered", "velocity-api", Versions.velocityApi)) - velocityRunClasspath("com.velocitypowered", "velocity-proxy", Versions.velocityApi) + annotationProcessor(libs.velocityApi) + compileOnly(libs.velocityApi) + velocityRunClasspath("com.velocitypowered", "velocity-proxy", libs.versions.velocityApi.get()) } diff --git a/gradle.properties b/gradle.properties index dc1e806b..8c14963d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,7 @@ +group=cloud.commandframework +version=1.7.0-SNAPSHOT +description=Command framework and dispatcher for the JVM + org.gradle.caching=true org.gradle.parallel=true org.gradle.jvmargs=-Xmx1G diff --git a/gradle/libs.versions.yml b/gradle/libs.versions.yml index 3b697807..3ce3d39c 100644 --- a/gradle/libs.versions.yml +++ b/gradle/libs.versions.yml @@ -5,18 +5,58 @@ metadata: plugins: com.github.johnrengelman.shadow: 7.1.2 - com.github.ben-manes.versions: 0.36.0 - org.jlleitschuh.gradle.ktlint: &ktlint 10.2.0 + com.github.ben-manes.versions: 0.42.0 + org.jlleitschuh.gradle.ktlint: &ktlint 10.2.1 versions: + checkstyle: 9.0 + checkerQual: 3.21.3 + errorprone: 2.9.0 + geantyref: 1.3.13 + jmh: 1.27 + + # integration + guice: 4.2.3 + + # kotlin kotlin: &kotlin 1.5.31 dokka: *kotlin coroutines: 1.5.2 - checkerQual: 3.14.0 + + # discord + javacord: 3.1.1 + jda: 4.2.1_257 + + # irc + pircbotx: 83a4c22e80 + + # minecraft + guava: 21.0-jre + brigadier: 1.0.17 + bukkit: 1.13.2-R0.1-SNAPSHOT + commodore: 1.13 + bungeecord: 1.8-SNAPSHOT + cloudburst: 1.0.0-SNAPSHOT + adventureApi: 4.9.3 + adventurePlatform: 4.1.0 + paperApi: 1.16.5-R0.1-SNAPSHOT + velocityApi: 3.1.0 + spongeApi7: 7.3.0 + jetbrainsAnnotations: 23.0.0 + fabricMinecraft: 1.16.5 + fabricLoader: 0.13.3 + fabricApi: 0.31.0+1.16 + fabricPermissionsApi: 0.1-SNAPSHOT + + # testing + jupiterEngine : 5.8.2 + mockitoCore : 4.1.0 + mockitoKotlin : 4.0.0 + truth : 1.1.3 # build-logic - indra: 2.0.6 - gradleTestLogger: 3.0.0 + indra: 2.1.1 + gradleTestLogger: 3.1.0 gradleErrorprone: 2.0.2 licenser: 0.6.1 ktlint: *ktlint @@ -26,7 +66,34 @@ dependencies: group: org.checkerframework name: checker-qual version: { ref: checkerQual } + errorproneCore: + group: com.google.errorprone + name: error_prone_core + version: { ref: errorprone } + errorproneAnnotations: + group: com.google.errorprone + name: error_prone_annotations + version: { ref: errorprone } + geantyref: + group: io.leangen.geantyref + name: geantyref + version: { ref: geantyref } + jmhCore: + group: org.openjdk.jmh + name: jmh-core + version: { ref: jmh } + jmhGeneratorAnnprocess: + group: org.openjdk.jmh + name: jmh-generator-annprocess + version: { ref: jmh } + # integration + guice: + group: com.google.inject + name: guice + version: { ref: guice } + + # kotlin coroutinesCore: group: org.jetbrains.kotlinx name: kotlinx-coroutines-core @@ -36,6 +103,118 @@ dependencies: name: kotlinx-coroutines-jdk8 version: { ref: coroutines } + # discord + javacord: + group: org.javacord + name: javacord + version: { ref: javacord } + jda: + group: net.dv8tion + name: JDA + version: { ref: jda } + + # irc + pircbotx: + group: com.github.pircbotx + name: pircbotx + version: { ref: pircbotx } + + # minecraft + guava: + group: com.google.guava + name: guava + version: { ref: guava } + brigadier: + group: com.mojang + name: brigadier + version: { ref: brigadier } + bukkit: + group: org.bukkit + name: bukkit + version: { ref: bukkit } + commodore: + group: me.lucko + name: commodore + version: { ref: commodore } + jetbrainsAnnotations: + group: org.jetbrains + name: annotations + version: { ref: jetbrainsAnnotations } + bungeecord: + group: net.md-5 + name: bungeecord-api + version: { ref: bungeecord } + cloudburst: + group: org.cloudburstmc + name: cloudburst-server + version: { ref: cloudburst } + adventureApi: + group: net.kyori + name: adventure-api + version: { ref: adventureApi } + adventurePlatformBukkit: + group: net.kyori + name: adventure-platform-bukkit + version: { ref: adventurePlatform } + adventurePlatformBungeecord: + group: net.kyori + name: adventure-platform-bungeecord + version: { ref: adventurePlatform } + adventureTextSerializerPlain: + group: net.kyori + name: adventure-text-serializer-plain + version: { ref: adventureApi } + paperApi: + group: com.destroystokyo.paper + name: paper-api + version: { ref: paperApi } + paperMojangApi : + group: com.destroystokyo.paper + name: paper-mojangapi + version: { ref: paperApi } + spongeApi7: + group: org.spongepowered + name: spongeapi + version: { ref: spongeApi7 } + velocityApi: + group: com.velocitypowered + name: velocity-api + version: { ref: velocityApi } + fabricMinecraft: + group: com.mojang + name: minecraft + version: { ref: fabricMinecraft } + fabricLoader: + group: net.fabricmc + name: fabric-loader + version: { ref: fabricLoader } + fabricPermissionsApi: + group: me.lucko + name: fabric-permissions-api + version: { ref: fabricPermissionsApi } + + # testing + jupiterEngine: + group: org.junit.jupiter + name: junit-jupiter-engine + version: { ref: jupiterEngine } + mockitoCore: + group: org.mockito + name: mockito-core + version: { ref: mockitoCore } + mockitoKotlin: + group: org.mockito.kotlin + name: mockito-kotlin + version: { ref: mockitoKotlin } + truth: + group: com.google.truth + name: truth + version: { ref: truth } + truthJava8: + group: com.google.truth.extensions + name: truth-java8-extension + version: { ref: truth } + # build-logic indraCommon: group: net.kyori