Skip to content

Latest commit

 

History

History
169 lines (127 loc) · 5.7 KB

File metadata and controls

169 lines (127 loc) · 5.7 KB

Added

  • Support setting "api-version" containing a patch version for v1.20.5+

Changed

  • Breaking change! Refactor development server implementation to use jpenilla/run-task plugin and integrate run-paper for server execution, improving maintainability and compatibility with various server versions.
  • Breaking change! Rename bukkit.meta { ... } to bukkit.plugin { ... }.
    • Task :parsePluginMetaFile and :mergePluginMeta renamed to :parsePluginYaml and :mergePluginYaml respectively.
    • bukkit.disableMetaGeneration() replaced by bukkit.plugin.disablePluginYamlGeneration()
    • Package .meta renamed to .plugin to reflect this change
  • Set the default JVM toolchain version instead of setting JVM target and source compatibility to 1.8. By default, the minimal supported JVM version compatible with the specified bukkit.server.version is used.
  • Use lazy API for bukkit.apiVersion and bukkit.generateMeta properties.
  • Accept EULA using CLI parameter -Dcom.mojang.eula.agree=true instead of changing eula.txt
  • Change the default value of bukkit.server.debug to false. It is recommended to use IDE facilities to run server with enabled debugging.

Fixed

  • Fix PaperMC repository URL
  • Fix group ID for PaperMC 1.17+
  • Fix compatibility with new versions of Shadow plugin

Housekeeping

  • Target JVM 1.8 → 17
  • Gradle 7.2 → 8.13
  • Remove old deprecated APIs

0.10.1 - 2021-11-07

Added

  • Plugin meta now supports field libraries.

Housekeeping

  • Gradle 7.1.1 -> 7.2

0.10.0 - 2021-07-20

Added

Changed

  • JCenter replaced with MavenCentral
  • Improved compatibility with Groovy
  • Removed usages of deprecated APIs

Fixed

  • Add duplicate strategy to processResources (#58)
  • Fix spigot core copying (#55)

0.9.2 - 2021-01-25

Fixed

  • Fixed task copyPlugins when shadow plugin is enabled

0.9.1 - 2021-01-16

Added

  • codemc() repository extension

Changed

  • BREAKING CHANGE: bukkit dependency extension renamed to bukkitApi. This name is more consistent, also it avoids conflict with BukkitExtension extension name.

0.9.0 - 2021-01-08

Reworked tasks hierarchy

All plugin's tasks reworked to use actual Gradle APIs:

Property syntax to configure meta fields

Use .set instead of =:

bukkit {
    meta {
-        desctiption = "My plugin's description"
+        description.set("My plugin's description")
    }
}

Improved Bukkit version management

Field bukkit.version is deprecated now, you should use bukkit.apiVersion instead. Also, you can specify a version for dev server different from apiVersion:

bukkit {
    apiVersion = "1.16.4"
    server {
        version = "1.15.2" // Want to test plugin on older minecraft version 
    }
}

If bukkit.server.version is not specified, will be used bukkit.apiVersion for server.

Now, BukkitGradle adds api-version field to plugin.yml. It will be parsed from bukkit.apiVersion but you can override it with bukkit.meta.apiVersion if need:

bukkit {
    apiVersion = "1.16.4" // Inferred api-version is 1.16
    
    meta {
        apiVersion.set("1.13") // But here you can override it
    }
}

Smarter plugin.yml generation

BukkitGradle will not "eat" your existing plugin.yml file. Its content will be used if you've not configured bukkit.meta in BukkitGradle.

If you don't want plugin.yml generation at all, you can disable it:

bukkit {
    disableMetaGeneration()
}

Re-written in Kotlin

The plugin has been converted to Kotlin to make support easier. The plugin still can be configured with Groovy DSL but now it is friendly to Kotlin DSL.

Removed

  • Removed task :rebuildServerCore, use :buildServerCore --rerun-tasks instead
  • Removed extension DependencyHandler.craftbukkit(), use DependencyHandler.spigot() instead
  • Removed automatic mavenLocal() apply, you should apply it manually if you need it
  • Removed repository extension RepositoryHandler.vault(), use RepositoryHandler.jitpack() instead and read VaultAPI README

Changed

  • bukkit.run renamed to bukkit.server. The old name is deprecated
  • Add nogui argument by default to bukkitArgs
  • Type of properties server.jvmArgs and server.bukkitArgs changed from String to List<String>. It makes it easier to add arguments without overriding defaults
  • Default main class pattern changed from <groupId>.<lowercased name>.<name> to <groupId>.<name>

Housekeeping

  • Default bukkit version now is 1.16.4
  • Update Gradle to 6.7.1