9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-19 15:09:25 +00:00
Files
Leaf/leaf-api/build.gradle.kts.patch
2025-06-11 05:20:38 +08:00

191 lines
7.7 KiB
Diff

--- a/paper-api/build.gradle.kts
+++ b/paper-api/build.gradle.kts
@@ -13,8 +_,10 @@
// Keep in sync with paper-server adventure-text-serializer-ansi dep
val adventureVersion = "4.21.0"
val bungeeCordChatVersion = "1.21-R0.2-deprecated+build.21"
-val slf4jVersion = "2.0.16"
-val log4jVersion = "2.24.1"
+// Leaf start - Bump Dependencies
+val slf4jVersion = "2.0.17"
+val log4jVersion = "2.24.3"
+// Leaf end - Bump Dependencies
val apiAndDocs: Configuration by configurations.creating {
attributes {
@@ -41,9 +_,13 @@
dependencies {
// api dependencies are listed transitively to API consumers
- api("com.google.guava:guava:33.3.1-jre")
+ // Leaf start - Bump Dependencies
+ api("com.google.guava:guava:33.4.0-jre")
+ // Waiting Paper, Gson has breaking change since 2.12.0
+ // See https://github.com/google/gson/commit/6c2e3db7d25ceceabe056aeb8b65477fdd509214
api("com.google.code.gson:gson:2.11.0")
- api("org.yaml:snakeyaml:2.2")
+ api("org.yaml:snakeyaml:2.3") // 2.4 removed `org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder`
+ // Leaf end - Bump Dependencies
api("org.joml:joml:1.10.8") {
isTransitive = false // https://github.com/JOML-CI/JOML/issues/352
}
@@ -51,6 +_,7 @@
api("org.apache.logging.log4j:log4j-api:$log4jVersion")
api("org.slf4j:slf4j-api:$slf4jVersion")
api("com.mojang:brigadier:1.3.10")
+ api("io.sentry:sentry:8.13.2") // Pufferfish
// Deprecate bungeecord-chat in favor of adventure
api("net.md-5:bungeecord-chat:$bungeeCordChatVersion") {
@@ -65,9 +_,11 @@
apiAndDocs("net.kyori:adventure-text-serializer-plain")
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
- api("org.apache.maven:maven-resolver-provider:3.9.6") // make API dependency for Paper Plugins
- compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18")
- compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18")
+ // Leaf start - Bump Dependencies
+ api("org.apache.maven:maven-resolver-provider:3.9.9") // make API dependency for Paper Plugins
+ compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.22") // Dreeam TODO - Update to 2.0.1
+ compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.22") // Dreeam TODO - Update to 2.0.1
+ // Leaf start - Bump Dependencies
// Annotations - Slowly migrate to jspecify
val annotations = "org.jetbrains:annotations:$annotationsVersion"
@@ -83,14 +_,22 @@
// Test dependencies
testImplementation("org.apache.commons:commons-lang3:3.17.0")
testImplementation("org.junit.jupiter:junit-jupiter:5.12.2")
- testImplementation("org.hamcrest:hamcrest:2.2")
- testImplementation("org.mockito:mockito-core:5.14.1")
+ // Leaf start - Bump Dependencies
+ testImplementation("org.hamcrest:hamcrest:3.0")
+ testImplementation("org.mockito:mockito-core:5.16.1")
+ // Leaf end - Bump Dependencies
testImplementation("org.ow2.asm:asm-tree:9.8")
- mockitoAgent("org.mockito:mockito-core:5.14.1") { isTransitive = false } // configure mockito agent that is needed in newer java versions
+ mockitoAgent("org.mockito:mockito-core:5.16.1") { isTransitive = false } // configure mockito agent that is needed in newer java versions // Leaf - Bump Dependencies
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
+
+ // Leaf start - Bump Dependencies
+ // commons-lang3 is removed in maven-resolver-provider since 3.9.8
+ // Add this because bukkit api still need it.
+ compileOnly("org.apache.commons:commons-lang3:3.17.0")
+ // Leaf end - Bump Dependencies
}
-val generatedDir: java.nio.file.Path = layout.projectDirectory.dir("src/generated/java").asFile.toPath()
+val generatedDir: java.nio.file.Path = rootProject.layout.projectDirectory.dir("paper-api/src/generated/java").asFile.toPath() // Leaf - project setup
idea {
module {
generatedSourceDirs.add(generatedDir.toFile())
@@ -100,6 +_,20 @@
main {
java {
srcDir(generatedDir)
+ // Leaf start - project setup
+ srcDir(file("../paper-api/src/main/java"))
+ }
+ resources {
+ srcDir(file("../paper-api/src/main/resources"))
+ }
+ }
+ test {
+ java {
+ srcDir(file("../paper-api/src/test/java"))
+ }
+ resources {
+ srcDir(file("../paper-api/src/test/resources"))
+ // Leaf end - project setup
}
}
}
@@ -137,6 +_,15 @@
}
}
+// Gale start - hide irrelevant compilation warnings
+tasks.withType<JavaCompile> {
+ val compilerArgs = options.compilerArgs
+ compilerArgs.add("-Xlint:-module")
+ compilerArgs.add("-Xlint:-removal")
+ compilerArgs.add("-Xlint:-dep-ann")
+ compilerArgs.add("--add-modules=jdk.incubator.vector") // Gale - Pufferfish - SIMD support
+}
+// Gale end - hide irrelevant compilation warnings
val generateApiVersioningFile by tasks.registering {
inputs.property("version", project.version)
val pomProps = layout.buildDirectory.file("pom.properties")
@@ -156,6 +_,12 @@
"Automatic-Module-Name" to "org.bukkit"
)
}
+
+ // Gale start - package license into jar
+ from("${project.projectDir}/LICENSE.txt") {
+ into("")
+ }
+ // Gale end - package license into jar
}
abstract class Services {
@@ -166,12 +_,12 @@
tasks.withType<Javadoc> {
val options = options as StandardJavadocDocletOptions
- options.overview = "src/main/javadoc/overview.html"
+ options.overview = "../paper-api/src/main/javadoc/overview.html" // Leaf - project setup
options.use()
options.isDocFilesSubDirs = true
options.links(
- "https://guava.dev/releases/33.3.1-jre/api/docs/",
- "https://javadoc.io/doc/org.yaml/snakeyaml/2.2/",
+ "https://guava.dev/releases/33.4.0-jre/api/docs/", // Leaf - Bump Dependencies
+ "https://javadoc.io/doc/org.yaml/snakeyaml/2.3/", // Leaf - Bump Dependencies
"https://javadoc.io/doc/org.jetbrains/annotations/$annotationsVersion/",
"https://javadoc.io/doc/org.joml/joml/1.10.8/",
"https://www.javadoc.io/doc/com.google.code.gson/gson/2.11.0",
@@ -185,7 +_,7 @@
"https://jd.advntr.dev/text-logger-slf4j/$adventureVersion/",
"https://javadoc.io/doc/org.slf4j/slf4j-api/$slf4jVersion/",
"https://logging.apache.org/log4j/2.x/javadoc/log4j-api/",
- "https://javadoc.io/doc/org.apache.maven.resolver/maven-resolver-api/1.7.3",
+ "https://javadoc.io/doc/org.apache.maven.resolver/maven-resolver-api/1.9.22", // Leaf - Bump Dependencies
)
options.tags("apiNote:a:API Note:")
@@ -199,16 +_,19 @@
}
// workaround for https://github.com/gradle/gradle/issues/4046
- inputs.dir("src/main/javadoc").withPropertyName("javadoc-sourceset")
+ inputs.dir("../paper-api/src/main/javadoc").withPropertyName("javadoc-sourceset") // Leaf - project setup
val fsOps = services.fileSystemOperations
doLast {
fsOps.copy {
- from("src/main/javadoc") {
+ from("../paper-api/src/main/javadoc") { // Leaf - project setup
include("**/doc-files/**")
}
into("build/docs/javadoc")
}
}
+
+ options.addStringOption("Xdoclint:none", "-quiet") // Gale - hide irrelevant compilation warnings
+ options.addStringOption("-add-modules", "jdk.incubator.vector") // Gale - Pufferfish - SIMD support
}
tasks.test {
@@ -230,6 +_,11 @@
jarToScan.set(tasks.jar.flatMap { it.archiveFile })
classpath.from(configurations.compileClasspath)
}
+// Leaf start - Bump Dependencies
+repositories {
+ mavenCentral()
+}
+// Leaf end - Bump Dependencies
tasks.check {
dependsOn(scanJarForBadCalls)
}