Skip to content

Commit c5899d2

Browse files
authored
version: 1.0.0 (#67)
1 parent 1ad7b08 commit c5899d2

File tree

3 files changed

+48
-31
lines changed

3 files changed

+48
-31
lines changed

CHANGELOG.md

+41-22
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,40 @@
11
## [Unreleased]
22

3-
### Added
3+
*No changes yet*
44

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
126

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
1422

1523
- **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,
1725
improving maintainability and compatibility with various server versions.
1826
- Remove `bukkit.server.coreType` property.
1927
Spigot is not supported anymore, PaperMC is the only supported server.
2028
If you need to run other server cores,
2129
please [file an issue](https://github.com/EndlessCodeGroup/BukkitGradle/issues/new).
2230
- **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:
2533
- Configuration block `bukkit.meta { ... }` -> `bukkit.plugin { ... }`
2634
- Property `bukkit.plugin.url` -> `bukkit.plugin.website`
2735
- Task `:parsePluginMetaFile` -> `:parsePluginYaml`
2836
- Task `:mergePluginMeta` has been dropped. Use `:mainResourceFactory` instead
2937
- 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-
```
3538
- **Breaking change!** Don't add repositories implicitly.
3639
It was impossible to opt out from automatic repositories adding.
3740
From now, repositories should be added manually. For example:
@@ -50,13 +53,28 @@
5053
apiVersion = "1.20.5"
5154
}
5255
```
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+
```
5363
- Set the default [JVM toolchain](https://docs.gradle.org/current/userguide/toolchains.html) version
5464
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.
5766
- Accept EULA using CLI parameter `-Dcom.mojang.eula.agree=true` instead of changing `eula.txt`
67+
68+
### Changed
69+
5870
- Change the default value of `bukkit.server.debug` to `false`.
5971
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.
6078

6179
### Fixed
6280

@@ -66,7 +84,7 @@
6684

6785
### Housekeeping
6886

69-
- Target JVM 1.8 → 17
87+
- Target JVM 1.8 → 17
7088
- Gradle 7.2 → 8.13
7189
- Remove old deprecated APIs
7290

@@ -152,7 +170,7 @@ It will be parsed from `bukkit.apiVersion` but you can override it with `bukkit.
152170
```kotlin
153171
bukkit {
154172
apiVersion = "1.16.4" // Inferred api-version is 1.16
155-
173+
156174
meta {
157175
apiVersion.set("1.13") // But here you can override it
158176
}
@@ -197,7 +215,8 @@ now it is friendly to Kotlin DSL.
197215
[uptodate]: https://docs.gradle.org/current/userguide/more_about_tasks.html#sec:up_to_date_checks
198216
[vault]: https://github.com/MilkBowl/VaultAPI
199217

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
201220
[0.10.1]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.10.0...0.10.1
202221
[0.10.0]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.9.2...0.10.0
203222
[0.9.2]: https://github.com/EndlessCodeGroup/BukkitGradle/compare/0.9.1...0.9.2

README.md

+5-7
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,9 @@ Gradle utilities to simplify Bukkit/Spigot plugins writing and debugging.
2121

2222
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
2323

24-
#### Features:
24+
#### Features
2525

2626
- Sets up compiler encoding to UTF-8
27-
- Sets archivesBaseName to plugin name
28-
- Supports APIs: Bukkit, CraftBukkit, Spigot, Paper
2927
- Provides short extension functions to add common repositories and dependencies
3028
- Generates plugin.yml from Gradle project information
3129
- Allows running dev server from IDE
@@ -38,7 +36,7 @@ Gradle utilities to simplify Bukkit/Spigot plugins writing and debugging.
3836
3937
```kotlin
4038
plugins {
41-
id("ru.endlesscode.bukkitgradle") version "0.10.1"
39+
id("ru.endlesscode.bukkitgradle") version "1.0.0"
4240
}
4341
```
4442

@@ -80,11 +78,11 @@ These values will be used to generate the `plugin.yml` file:
8078

8179
```kotlin
8280
plugins {
83-
id("ru.endlesscode.bukkitgradle") version "0.10.1"
81+
id("ru.endlesscode.bukkitgradle") version "1.0.0"
8482
}
8583

8684
group = "com.example.myplugin"
87-
description = "My first Bukkit plugin built by Gradle"
85+
description = "My first Bukkit plugin built with Gradle"
8886
version = "0.1"
8987

9088
bukkit {
@@ -111,7 +109,7 @@ api-version: 1.21.5
111109
name: MyPlugin
112110
version: '0.1'
113111
main: com.example.myplugin.MyPlugin
114-
description: My first Bukkit plugin built by Gradle
112+
description: My first Bukkit plugin built with Gradle
115113
```
116114
117115
> [!NOTE]

gradle.properties

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
group=ru.endlesscode
2-
description=Bukkit Gradle integration plugins
3-
version=0.11.0-SNAPSHOT
2+
description=Simple development of Bukkit plugins with Gradle
3+
version=1.0.0
44
org.gradle.jvmargs=-Xmx3G
55
org.gradle.parallel=true
66
org.gradle.daemon=true

0 commit comments

Comments
 (0)