Releases: Kord-Extensions/gradle-plugins
Release v1.1.3
Gradle Plugins 1.1.3
This version targets the KordEx plugin.
KordEx Plugin
This release includes the following changes:
- Fail safely when we can't find the Kotlin JVM plugin JAR, and thus can't check for compatibility.
Commits (1)
- 4f1202: Nobody saw that. /j
Release v1.1.2
Gradle Plugins 1.1.2
This version targets the KordEx plugin.
KordEx Plugin
This release includes the following changes:
- Add a
jvmTarget
option to thekordEx { }
builder, which overrides the JVM compilation target. This would usually come from Kord Extensions, but some projects may need to supply their own version when dealing with some dependencies.
Commits (1)
- aa5cf0: Release 1.1.2
Release v1.1.1
Gradle Plugins 1.1.1
This version targets the KordEx plugin.
KordEx Plugin
This release includes the following changes:
- Automatically adds the KordEx annotation processor when you apply the KSP plugin to the project.
- Fix a typo that prevented the Fabric repo from being added to your project's repositories when using the
extra-mappings
module. - Support for optionally supplying custom configurations to apply dependencies to.
- Support for projects that aren't bots or plugins, such as standalone modules. This means you can go back to omitting the
kordEx { }
block, or omit thebot { }
andplugin { }
blocks, and the plugin will work as expected. - Non-bot or -plugin projects will automatically avoid depending on Kord's voice module.
Commits (1)
- 0c5b3b: Release 1.1.1
Release v1.1.0
Gradle Plugins 1.1.0
This version targets the KordEx plugin. I've made significant changes in this version, so please pay attention!
KordEx Plugin
This release includes the following changes:
- Support for building KordEx plugins via the new
plugin
builder, present in thekordEx
builder.- Required: Plugin class, ID, and version
- Optional: Author, dependencies, description, KordEx version constraint, and license
- Support for building KordEx bots moved to a new
bot
builder, present in thekordEx
builder.- Required: Bot main class
- Optional: Data collection setting, Kord voice dependency toggle
- The remaining settings haven't moved:
- Add repositories toggle, ignore Kotlin version toggle, kord version, kordEx version, kordEx module dependencies
Commits (1)
- 33263d: Release 1.1.0
Release v1.0.5
Gradle Plugins 1.0.5
This version targets the KordEx plugin.
KordEx Plugin
This release includes the following changes:
- Switch from shadowing FlexVer to sticking it into the project directly.
It is a CC0 library intended to be used this way, so may as well take the easy route.
Commits (1)
- 49c110: Exclude FlexVer from license checks
Release v1.0.4
Gradle Plugins 1.0.4
This version targets the KordEx plugin.
KordEx Plugin
This release includes the following changes:
-
Start linting with Detekt, add an editorconfig, and reformat source files.
-
Merged PR #3 by @DRSchlaubi - thanks!
- Update Gradle to 8.9 and Kotlin to 1.9.23.
- Omit Gradle API/Groovy from the built plugin JAR.
- Switch to Gradle
Property
objects for plugin configuration.
-
Switch to KordEx Maven repo subdomains, which don't execute S3 commands. These domains provide direct access to the R2 buckets storing the Maven artefacts, and you won't be able to browse them directly.
The domains are:
- Releases: https://releases-repo.kordex.dev
- Snapshots: https://snapshots-repo.kordex.dev
Commits (1)
- 59ecfd: Release 1.0.4
Release v1.0.3
Gradle Plugins 1.0.3
This version targets the KordEx plugin.
KordEx Plugin
This release includes the following changes:
- The plugin now uses the KordEx Maven repo instead of OSSRH to resolve and depend on KordEx versions. The plugin now adds this repo before OSSRH.
- Previously, the plugin would figure out the latest version of a Kord or KordEx release by comparing the latest version indicated by the Maven metadata. As this tends to be somewhat unreliable, it now uses FlexVer to compare all the available version numbers.
- Because of FlexVer, the plugin is now a fat jar, with all dependencies included.
Commits (1)
- d30b04: Release 1.0.3
Release v1.0.2
Gradle Plugins 1.0.2
This version targets the recently released KordEx plugin with a bug fix.
KordEx Plugin
This release includes the following fixes:
- Previously, the plugin would error on Linux due to a failure to create a directory for the plugin-generated resource files. This was due to Gradle's layout API unexpectedly treating subfiles starting with
/
as if they were within the filesystem root.
Commits (1)
- 2e0fe7: Sign root CI build too
Release v1.0.1
Gradle Plugins 1.0.1
This version targets the recently released KordEx plugin with some improvements. We'll update the KordEx template project to use the plugin once we publish this version and the Gradle plugin portal approves it.
KordEx Plugin
This release introduced several new features, specifically:
- A
mainClass
configuration option, which you should set to your bot's main class, similarly to theapplication
plugin or theMain-Class
JAR manifest. This will automatically configure both theapplication
plugin and thejar
task. - The plugin now automatically adds the
google()
Maven repository. - The plugin now automatically configures the Kotlin plugin, setting required compiler arguments and matching Kord Extensions' JVM target.
- The plugin now automatically configures the Java plugin, matching Kord Extensions' source and target compatibility.
It also includes the following fixes:
- Previously, the plugin hard-coded the expected Kotlin version. It will now retrieve the Kotlin version used to build the configured KordEx version (or the latest version if you don't provide one).
Commits (1)
- 4c4d5c: Plugin version 1.0.1
Release v1.0.0
Gradle Plugins 1.0.0
This is the first tagged release for our Gradle plugins, and it represents the first major milestone for this repository.
KordEx Plugin
This release introduces the new KordEx plugin, designed to make it easier to set up and configure a project using it. This will be the canonical way to set up a KordEx project from now on.
The plugin supports the following options, exposed via the kordEx
builder:
addRepositiories = true
- Whether to add the repos you'll need to grab KordEx and its dependencies at build time.ignoreIncompatibleKotlinVersion = false
- Whether to warn about incompatible Kotlin versions instead of error.kordVersion = null
- A specific Kord version to pin, instead of the one KordEx was built against.kordExVersion = null
- A specific KordEx version to pin, instead of the latest version.voice = true
- Whether to use a version of Kord that supports voice, which will result in a larger dependency.
It also exposes the following functions:
dataCollection(level)
- Set your bot's data collection settings. Note: We haven't implemented data collection yet.module(name)
- Add a dependency on a KordEx module by name.
Note: We only support using this plugin with Kotlin Gradle build scripts.
You may add this to your project as follows, once the Gradle Plugin Portal approves it:
plugins {
id("dev.kordex.gradle.kordex") version "1.0.0"
}
When switching to this plugin, you should remove all dependencies you may have on Kord and KordEx!
Commits (1)
- 0fa1ff: Switch Tag workflow to correct task