Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,16 @@ jobs:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Set up JDK 17
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 17
distribution: temurin
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
uses: gradle/actions/setup-gradle@v5
- name: Generate documentation directory
run: ./gradlew dokkaHtml
run: ./gradlew dokkaGenerateHtml
- name: Upload artifact
uses: actions/upload-pages-artifact@v4
with:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@ jobs:
environment: maven-central-release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Set up JDK 17
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
java-version: 17
distribution: temurin
- name: Build and test
run: ./gradlew build test dokkaHtml
run: ./gradlew build test dokkaGenerateHtml
- name: Release to Maven Central
env:
JRELEASER_MAVENCENTRAL_USERNAME: ${{ secrets.MAVENCENTRAL_USERNAME }}
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: 17
distribution: temurin
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
uses: gradle/actions/setup-gradle@v5
- name: Build and test
run: ./gradlew --build-cache --parallel build check dokkaHtml
run: ./gradlew --build-cache --parallel build check dokkaGenerateHtml
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
[7]: https://github.com/MinnDevelopment/strumbot
[8]: https://minndevelopment.github.io/jda-ktx/

[![Kotlin](https://img.shields.io/badge/kotlin-2.2.10-blue.svg?logo=kotlin)](http://kotlinlang.org)
[![Kotlin](https://img.shields.io/badge/kotlin-2.3.0-blue.svg?logo=kotlin)](http://kotlinlang.org)
[![kotlinx-coroutines](https://img.shields.io/badge/kotlinx.coroutines-1.10.2-blue.svg?logo=kotlin)][2]
[![JDA](https://img.shields.io/badge/JDA-5.6.1-blue.svg)][1]
[![JDA](https://img.shields.io/badge/JDA-6.2.0-blue.svg)][1]
[![docs](https://img.shields.io/github/deployments/minndevelopment/jda-ktx/github-pages?label=docs)][8]
[ ![](https://img.shields.io/maven-central/v/club.minnced/jda-ktx) ](https://search.maven.org/artifact/club.minnced/jda-ktx)

Expand All @@ -22,9 +22,9 @@ Great in combination with [kotlinx-coroutines][2] and [jda-reactor][3].

## Required Dependencies

- Kotlin **2.2.10**
- Kotlin **2.3.0**
- kotlinx.coroutines **1.10.2**
- JDA **5.6.1**
- JDA **6.2.0**

## Examples

Expand Down
26 changes: 11 additions & 15 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask
import nl.littlerobots.vcu.plugin.resolver.VersionSelectors
import org.gradle.kotlin.dsl.withType
import org.jetbrains.dokka.base.DokkaBase
import org.jetbrains.dokka.base.DokkaBaseConfiguration
import org.jetbrains.dokka.gradle.DokkaTask
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
import org.jreleaser.gradle.plugin.tasks.AbstractJReleaserTask
import org.jreleaser.model.Active
import java.net.URI

plugins {
`maven-publish`
Expand All @@ -28,7 +24,7 @@ buildscript {
}

group = "club.minnced"
version = "0.13.0"
version = "0.14.0"



Expand All @@ -45,7 +41,6 @@ tasks.withType<KotlinJvmCompile> {
compilerOptions {
allWarningsAsErrors.set(true)
jvmTarget.set(JvmTarget.JVM_1_8)
freeCompilerArgs.addAll("-Xjvm-default=all")
}
}

Expand Down Expand Up @@ -136,22 +131,23 @@ tasks.test.get().dependsOn(tasks.getByName("detekt"))
// Documentation //
///////////////////

tasks.withType<DokkaTask>().configureEach {
dokkaSourceSets.named("main") {
dokka {
dokkaSourceSets.main {
includes.from("packages.md")
jdkVersion.set(8)

sourceLink {
localDirectory.set(file("src/main/kotlin"))
remoteUrl.set(URI("https://github.com/MinnDevelopment/jda-ktx/tree/master/src/main/kotlin").toURL())
remoteUrl("https://github.com/MinnDevelopment/jda-ktx/tree/master/src/main/kotlin")
remoteLineSuffix.set("#L")
}

externalDocumentationLink(
url = URI("https://ci.dv8tion.net/job/JDA5/javadoc/").toURL(),
packageListUrl = URI("https://ci.dv8tion.net/job/JDA5/javadoc/element-list").toURL()
)
externalDocumentationLinks.register("JDA") {
url("https://docs.jda.wiki/")
packageListUrl("https://docs.jda.wiki/element-list")
}

pluginConfiguration<DokkaBase, DokkaBaseConfiguration> {
pluginsConfiguration.html {
footerMessage = "Copyright © 2020 Florian Spieß"
}
}
Expand Down Expand Up @@ -226,7 +222,7 @@ jreleaser {
}
}

signing {
signing.pgp {
active = Active.RELEASE
armored = true
}
Expand Down
14 changes: 7 additions & 7 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
[versions]
jda = "6.0.0"
kotlin = "2.2.10"
jda = "6.2.0"
kotlin = "2.3.0"

[libraries]
coroutines = "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2"
jda = { module = "net.dv8tion:JDA", version.ref = "jda" }
kotlin = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
logback = "ch.qos.logback:logback-classic:1.5.18"
logback = "ch.qos.logback:logback-classic:1.5.23"
webhooks = "club.minnced:discord-webhooks:0.8.4"

[plugins]
detekt = "io.gitlab.arturbosch.detekt:1.23.8"
dokka = "org.jetbrains.dokka:2.0.0"
jreleaser = "org.jreleaser:1.20.0"
version-catalog-update = "nl.littlerobots.version-catalog-update:1.0.0"
versions = "com.github.ben-manes.versions:0.52.0"
dokka = "org.jetbrains.dokka:2.1.0"
jreleaser = "org.jreleaser:1.22.0"
version-catalog-update = "nl.littlerobots.version-catalog-update:1.0.1"
versions = "com.github.ben-manes.versions:0.53.0"
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
2 changes: 1 addition & 1 deletion packages.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ dependencies {

# Package dev.minn.jda.ktx.coroutines

Implements extension functions to easily integrate [RestAction](https://ci.dv8tion.net/job/JDA5/javadoc/net/dv8tion/jda/api/requests/RestAction.html), [Task](https://ci.dv8tion.net/job/JDA5/javadoc/net/dv8tion/jda/api/utils/concurrent/Task.html), and [CompletableFuture](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html) into coroutine scopes by adding `await()` for each.
Implements extension functions to easily integrate [RestAction](https://docs.jda.wiki/net/dv8tion/jda/api/requests/RestAction.html), [Task](https://docs.jda.wiki/net/dv8tion/jda/api/utils/concurrent/Task.html), and [CompletableFuture](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html) into coroutine scopes by adding `await()` for each.

This also adds any other useful extensions like `Flow` integrations.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@ import net.dv8tion.jda.api.interactions.commands.OptionType
import java.io.File

inline fun <reified T> optionType() = when(T::class.java) {
java.lang.Float::class.java, java.lang.Double::class.java -> OptionType.NUMBER
Integer::class.java, java.lang.Long::class.java, java.lang.Short::class.java, java.lang.Byte::class.java -> OptionType.INTEGER
Float::class.java, Double::class.java -> OptionType.NUMBER
Int::class.java, Long::class.java, Short::class.java, Byte::class.java -> OptionType.INTEGER
String::class.java -> OptionType.STRING
User::class.java, Member::class.java -> OptionType.USER
Role::class.java -> OptionType.ROLE
java.lang.Boolean::class.java -> OptionType.BOOLEAN
Boolean::class.java -> OptionType.BOOLEAN
File::class.java, Message.Attachment::class.java -> OptionType.ATTACHMENT
else -> when {
Channel::class.java.isAssignableFrom(T::class.java) -> OptionType.CHANNEL
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ inline fun <reified T> CommandInteractionPayload.getOption(name: String): T? = w
User::class.java -> getOption(name, OptionMapping::getAsUser) as? T
Member::class.java -> getOption(name, OptionMapping::getAsMember) as? T
Role::class.java -> getOption(name, OptionMapping::getAsRole) as? T
Integer::class.java, Int::class.java -> getOption(name, OptionMapping::getAsInt) as? T
Long::class.java, java.lang.Long::class.java -> getOption(name, OptionMapping::getAsLong) as? T
Int::class.java -> getOption(name, OptionMapping::getAsInt) as? T
Long::class.java -> getOption(name, OptionMapping::getAsLong) as? T
Double::class.java -> getOption(name, OptionMapping::getAsDouble) as? T
Boolean::class.java, java.lang.Boolean::class.java -> getOption(name, OptionMapping::getAsBoolean) as? T
Boolean::class.java -> getOption(name, OptionMapping::getAsBoolean) as? T
String::class.java -> getOption(name, OptionMapping::getAsString) as? T
Message.Attachment::class.java -> getOption(name, OptionMapping::getAsAttachment) as? T
IMentionable::class.java -> getOption(name, OptionMapping::getAsMentionable) as? T
Expand Down