|
1 | 1 | ## [Unreleased] |
2 | 2 |
|
3 | | -### Added |
| 3 | +*No changes yet* |
4 | 4 |
|
5 | | -- Support setting "api-version" containing a patch version for v1.20.5+ |
6 | | -- Add dependency substitution rules fixing paper groupId and substituting bukkit version. |
7 | | - In version catalogs placeholder value `{bukkit.version}` can be used, and it will be replaced with the actual version: |
8 | | - ```toml |
9 | | - [libraries] |
10 | | - paperApi = { module = "io.papermc.paper:paper-api", version = "{bukkit.apiVersion}" } |
11 | | - ``` |
| 5 | +## [1.0.0] - 2025-04-18 |
12 | 6 |
|
13 | | -### Changed |
| 7 | +### Pivot! |
| 8 | + |
| 9 | +After a 4-year hiatus in releases, the plugin landscape has evolved significantly. |
| 10 | +jpenilla's excellent plugins [run-task](https://github.com/jpenilla/run-task/) and [resource-factory](https://github.com/jpenilla/resource-factory) have been released, |
| 11 | +and they're perfect for running Paper servers and generating `plugin.yml`. |
| 12 | + |
| 13 | +Rather than maintaining our own implementations, BukkitGradle now leverages jpenilla's work, allowing us to: |
| 14 | + |
| 15 | +1. **Reduce maintenance burden**: By delegating core functionality to actively maintained projects |
| 16 | +2. **Focus on innovation**: Instead of reinventing the wheel, we can add new features |
| 17 | + |
| 18 | +The main goal of BukkitGradle is now to provide nice defaults and a unified API |
| 19 | +that simplifies plugin development by seamlessly integrating these plugins. |
| 20 | + |
| 21 | +### Features |
14 | 22 |
|
15 | 23 | - **Breaking change!** |
16 | | - Refactor development server implementation to use [jpenilla/run-task](https://github.com/jpenilla/run-task/) plugin and integrate run-paper for server execution, |
| 24 | + Use [jpenilla/run-task](https://github.com/jpenilla/run-task/) plugin and integrate run-paper for server execution, |
17 | 25 | improving maintainability and compatibility with various server versions. |
18 | 26 | - Remove `bukkit.server.coreType` property. |
19 | 27 | Spigot is not supported anymore, PaperMC is the only supported server. |
20 | 28 | If you need to run other server cores, |
21 | 29 | please [file an issue](https://github.com/EndlessCodeGroup/BukkitGradle/issues/new). |
22 | 30 | - **Breaking change!** |
23 | | - Use [jpenilla/resource-factory](https://github.com/jpenilla/resource-factory) to generate `plugin.yml`. |
24 | | - This change comes with some renames: |
| 31 | + Use [jpenilla/resource-factory](https://github.com/jpenilla/resource-factory) under the hood to generate `plugin.yml`. |
| 32 | + This change enables full configuration of `plugin.yml` from a build script, but it comes with some renaming: |
25 | 33 | - Configuration block `bukkit.meta { ... }` -> `bukkit.plugin { ... }` |
26 | 34 | - Property `bukkit.plugin.url` -> `bukkit.plugin.website` |
27 | 35 | - Task `:parsePluginMetaFile` -> `:parsePluginYaml` |
28 | 36 | - Task `:mergePluginMeta` has been dropped. Use `:mainResourceFactory` instead |
29 | 37 | - Package `ru.endlesscode.bukkitgradle.meta` -> `ru.endlesscode.bukkitgradle.plugin` |
30 | | -- - **Breaking change!** Change API for disabling `plugin.yml` generation: |
31 | | - ```diff |
32 | | - -bukkit.disableMetaGeneration() |
33 | | - +bukkit.generatePluginYaml.set(false) |
34 | | - ``` |
35 | 38 | - **Breaking change!** Don't add repositories implicitly. |
36 | 39 | It was impossible to opt out from automatic repositories adding. |
37 | 40 | From now, repositories should be added manually. For example: |
|
50 | 53 | apiVersion = "1.20.5" |
51 | 54 | } |
52 | 55 | ``` |
| 56 | +- Support setting "api-version" containing a patch version for v1.20.5+ |
| 57 | +- Add dependency substitution rules fixing paper groupId and substituting bukkit version. |
| 58 | + In version catalogs placeholder value `{bukkit.version}` can be used, and it will be replaced with the actual version: |
| 59 | + ```toml |
| 60 | + [libraries] |
| 61 | + paperApi = { module = "io.papermc.paper:paper-api", version = "{bukkit.apiVersion}" } |
| 62 | + ``` |
53 | 63 | - Set the default [JVM toolchain](https://docs.gradle.org/current/userguide/toolchains.html) version |
54 | 64 | instead of setting JVM target and source compatibility to 1.8. |
55 | | - By default, the minimal supported JVM version compatible with the specified `bukkit.server.version` is used. |
56 | | -- Use lazy API for `bukkit.apiVersion` and `bukkit.generateMeta` properties. |
| 65 | + By default, the minimal supported JVM version compatible with the specified `bukkit.apiVersion` is used. |
57 | 66 | - Accept EULA using CLI parameter `-Dcom.mojang.eula.agree=true` instead of changing `eula.txt` |
| 67 | + |
| 68 | +### Changed |
| 69 | + |
58 | 70 | - Change the default value of `bukkit.server.debug` to `false`. |
59 | 71 | It is recommended to use IDE facilities to run server with enabled debugging. |
| 72 | +- Change API for disabling `plugin.yml` generation: |
| 73 | + ```diff |
| 74 | + -bukkit.disableMetaGeneration() |
| 75 | + +bukkit.generatePluginYaml.set(false) |
| 76 | + ``` |
| 77 | +- Use lazy API for `bukkit.apiVersion` property. |
60 | 78 |
|
61 | 79 | ### Fixed |
62 | 80 |
|
|
66 | 84 |
|
67 | 85 | ### Housekeeping |
68 | 86 |
|
69 | | -- Target JVM 1.8 → 17 |
| 87 | +- Target JVM 1.8 → 17 |
70 | 88 | - Gradle 7.2 → 8.13 |
71 | 89 | - Remove old deprecated APIs |
72 | 90 |
|
@@ -152,7 +170,7 @@ It will be parsed from `bukkit.apiVersion` but you can override it with `bukkit. |
152 | 170 | ```kotlin |
153 | 171 | bukkit { |
154 | 172 | apiVersion = "1.16.4" // Inferred api-version is 1.16 |
155 | | - |
| 173 | + |
156 | 174 | meta { |
157 | 175 | apiVersion.set("1.13") // But here you can override it |
158 | 176 | } |
@@ -197,7 +215,8 @@ now it is friendly to Kotlin DSL. |
197 | 215 | [uptodate]: https://docs.gradle.org/current/userguide/more_about_tasks.html#sec:up_to_date_checks |
198 | 216 | [vault]: https://github.com/MilkBowl/VaultAPI |
199 | 217 |
|
200 | | -[unreleased]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.10.1...develop |
| 218 | +[unreleased]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/1.0.0...develop |
| 219 | +[1.0.0]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.10.1...1.0.0 |
201 | 220 | [0.10.1]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.10.0...0.10.1 |
202 | 221 | [0.10.0]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.9.2...0.10.0 |
203 | 222 | [0.9.2]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.9.1...0.9.2 |
|
0 commit comments