[ci skip] Comment out update tasks, update comments

This commit is contained in:
Nassim Jahnke 2024-12-23 12:29:27 +01:00
parent 976b0a4d8b
commit 63c94c90d9
No known key found for this signature in database
GPG key ID: EF6771C01F6EF02F
3 changed files with 71 additions and 87 deletions

View file

@ -82,7 +82,9 @@ tasks.register("printPaperVersion") {
} }
} }
tasks.register("gibWork") { /*
// Used when updating to a new Minecraft version
tasks.register("pickUpdateDirectory") {
val issue = providers.gradleProperty("updateTaskListIssue").get() val issue = providers.gradleProperty("updateTaskListIssue").get()
val patchesFolder = layout.projectDirectory.dir("paper-server/patches/").convertToPath() val patchesFolder = layout.projectDirectory.dir("paper-server/patches/").convertToPath()
val storage = layout.cache.resolve("last-updating-folder").also { it.parent.createDirectories() } val storage = layout.cache.resolve("last-updating-folder").also { it.parent.createDirectories() }
@ -122,7 +124,7 @@ tasks.register("gibWork") {
} }
} }
tasks.register("showWork") { tasks.register("showUpdateDirectories") {
val patchDir = layout.projectDirectory.dir("paper-server/patches/unapplied/").convertToPath() val patchDir = layout.projectDirectory.dir("paper-server/patches/unapplied/").convertToPath()
doLast { doLast {
@ -137,7 +139,7 @@ tasks.register("showWork") {
} }
} }
tasks.register("checkWork") { tasks.register("moveUpdateDirectory") {
notCompatibleWithConfigurationCache("This task is interactive") notCompatibleWithConfigurationCache("This task is interactive")
fun expandUserHome(path: String): Path { fun expandUserHome(path: String): Path {
return Path.of(path.replaceFirst("^~".toRegex(), System.getProperty("user.home"))) return Path.of(path.replaceFirst("^~".toRegex(), System.getProperty("user.home")))
@ -179,7 +181,6 @@ tasks.register("checkWork") {
} }
// see gradle.properties // see gradle.properties
/*
if (providers.gradleProperty("updatingMinecraft").getOrElse("false").toBoolean()) { if (providers.gradleProperty("updatingMinecraft").getOrElse("false").toBoolean()) {
tasks.collectAtsFromPatches { tasks.collectAtsFromPatches {
val dir = layout.projectDirectory.dir("patches/unapplied/server") val dir = layout.projectDirectory.dir("patches/unapplied/server")

View file

@ -1,7 +1,7 @@
plugins { plugins {
`java-library` `java-library`
`maven-publish` `maven-publish`
idea // Paper idea
} }
java { java {
@ -14,6 +14,7 @@ val bungeeCordChatVersion = "1.20-R0.2"
val adventureVersion = "4.17.0" val adventureVersion = "4.17.0"
val slf4jVersion = "2.0.9" val slf4jVersion = "2.0.9"
val log4jVersion = "2.17.1" val log4jVersion = "2.17.1"
val apiAndDocs: Configuration by configurations.creating { val apiAndDocs: Configuration by configurations.creating {
attributes { attributes {
attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION)) attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION))
@ -26,7 +27,7 @@ configurations.api {
extendsFrom(apiAndDocs) extendsFrom(apiAndDocs)
} }
// Paper start - configure mockito agent that is needed in newer java versions // Configure mockito agent that is needed in newer Java versions
val mockitoAgent = configurations.register("mockitoAgent") val mockitoAgent = configurations.register("mockitoAgent")
abstract class MockitoAgentProvider : CommandLineArgumentProvider { abstract class MockitoAgentProvider : CommandLineArgumentProvider {
@get:CompileClasspath @get:CompileClasspath
@ -36,27 +37,29 @@ abstract class MockitoAgentProvider : CommandLineArgumentProvider {
return listOf("-javaagent:" + fileCollection.files.single().absolutePath) return listOf("-javaagent:" + fileCollection.files.single().absolutePath)
} }
} }
// Paper end - configure mockito agent that is needed in newer java versions
dependencies { dependencies {
api("com.mojang:brigadier:1.3.10") // Paper - Brigadier command api
// api dependencies are listed transitively to API consumers // api dependencies are listed transitively to API consumers
api("com.google.guava:guava:33.3.1-jre") api("com.google.guava:guava:33.3.1-jre")
api("com.google.code.gson:gson:2.11.0") api("com.google.code.gson:gson:2.11.0")
// Paper start - adventure
api("net.md-5:bungeecord-chat:$bungeeCordChatVersion-deprecated+build.19") {
exclude("com.google.guava", "guava")
}
// Paper - adventure
api("org.yaml:snakeyaml:2.2") api("org.yaml:snakeyaml:2.2")
api("org.joml:joml:1.10.8") { api("org.joml:joml:1.10.8") {
isTransitive = false // https://github.com/JOML-CI/JOML/issues/352 isTransitive = false // https://github.com/JOML-CI/JOML/issues/352
} }
// Paper start
api("com.googlecode.json-simple:json-simple:1.1.1") { api("com.googlecode.json-simple:json-simple:1.1.1") {
isTransitive = false // includes junit isTransitive = false // includes junit
} }
api("it.unimi.dsi:fastutil:8.5.15") api("it.unimi.dsi:fastutil:8.5.15")
api("org.apache.logging.log4j:log4j-api:$log4jVersion")
api("org.slf4j:slf4j-api:$slf4jVersion")
api("com.mojang:brigadier:1.3.10")
// Deprecate bungeecord-chat in favor of adventure
api("net.md-5:bungeecord-chat:$bungeeCordChatVersion-deprecated+build.19") {
exclude("com.google.guava", "guava")
}
apiAndDocs(platform("net.kyori:adventure-bom:$adventureVersion")) apiAndDocs(platform("net.kyori:adventure-bom:$adventureVersion"))
apiAndDocs("net.kyori:adventure-api") apiAndDocs("net.kyori:adventure-api")
apiAndDocs("net.kyori:adventure-text-minimessage") apiAndDocs("net.kyori:adventure-text-minimessage")
@ -64,38 +67,35 @@ dependencies {
apiAndDocs("net.kyori:adventure-text-serializer-legacy") apiAndDocs("net.kyori:adventure-text-serializer-legacy")
apiAndDocs("net.kyori:adventure-text-serializer-plain") apiAndDocs("net.kyori:adventure-text-serializer-plain")
apiAndDocs("net.kyori:adventure-text-logger-slf4j") apiAndDocs("net.kyori:adventure-text-logger-slf4j")
api("org.apache.logging.log4j:log4j-api:$log4jVersion")
api("org.slf4j:slf4j-api:$slf4jVersion")
implementation("org.ow2.asm:asm:9.7.1") implementation("org.ow2.asm:asm:9.7.1")
implementation("org.ow2.asm:asm-commons:9.7.1") implementation("org.ow2.asm:asm-commons:9.7.1")
// Paper end
api("org.apache.maven:maven-resolver-provider:3.9.6") // Paper - make API dependency for Paper Plugins 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-connector-basic:1.9.18")
compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18") compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18")
val annotations = "org.jetbrains:annotations:$annotationsVersion" // Paper - we don't want Java 5 annotations... // Annotations - Slowly migrate to jspecify
val annotations = "org.jetbrains:annotations:$annotationsVersion"
compileOnly(annotations) compileOnly(annotations)
testCompileOnly(annotations) testCompileOnly(annotations)
// Paper start - add checker
val checkerQual = "org.checkerframework:checker-qual:3.33.0" val checkerQual = "org.checkerframework:checker-qual:3.33.0"
compileOnlyApi(checkerQual) compileOnlyApi(checkerQual)
testCompileOnly(checkerQual) testCompileOnly(checkerQual)
// Paper end
api("org.jspecify:jspecify:1.0.0") // Paper - add jspecify
api("org.jspecify:jspecify:1.0.0")
// Test dependencies
testImplementation("org.apache.commons:commons-lang3:3.12.0") testImplementation("org.apache.commons:commons-lang3:3.12.0")
testImplementation("org.junit.jupiter:junit-jupiter:5.10.2") testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
testImplementation("org.hamcrest:hamcrest:2.2") testImplementation("org.hamcrest:hamcrest:2.2")
testImplementation("org.mockito:mockito-core:5.14.1") testImplementation("org.mockito:mockito-core:5.14.1")
testImplementation("org.ow2.asm:asm-tree:9.7.1") testImplementation("org.ow2.asm:asm-tree:9.7.1")
mockitoAgent("org.mockito:mockito-core:5.14.1") { isTransitive = false } // Paper - configure mockito agent that is needed in newer java versions mockitoAgent("org.mockito:mockito-core:5.14.1") { isTransitive = false } // configure mockito agent that is needed in newer java versions
testRuntimeOnly("org.junit.platform:junit-platform-launcher") testRuntimeOnly("org.junit.platform:junit-platform-launcher")
} }
// Paper start
val generatedApiPath: java.nio.file.Path = rootProject.projectDir.toPath().resolve("paper-api-generator/generated") val generatedApiPath: java.nio.file.Path = rootProject.projectDir.toPath().resolve("paper-api-generator/generated")
idea { idea {
module { module {
@ -109,8 +109,7 @@ sourceSets {
} }
} }
} }
// Paper end
// Paper start - brigadier API
val outgoingVariants = arrayOf("runtimeElements", "apiElements", "sourcesElements", "javadocElements") val outgoingVariants = arrayOf("runtimeElements", "apiElements", "sourcesElements", "javadocElements")
val mainCapability = "${project.group}:${project.name}:${project.version}" val mainCapability = "${project.group}:${project.name}:${project.version}"
configurations { configurations {
@ -133,15 +132,13 @@ configurations {
} }
} }
} }
// Paper end
configure<PublishingExtension> { configure<PublishingExtension> {
publications.create<MavenPublication>("maven") { publications.create<MavenPublication>("maven") {
// Paper start - brigadier API // For Brigadier API
outgoingVariants.forEach { outgoingVariants.forEach {
suppressPomMetadataWarningsFor(it) suppressPomMetadataWarningsFor(it)
} }
// Paper end
from(components["java"]) from(components["java"])
} }
} }
@ -181,14 +178,10 @@ tasks.withType<Javadoc> {
options.links( options.links(
"https://guava.dev/releases/33.3.1-jre/api/docs/", "https://guava.dev/releases/33.3.1-jre/api/docs/",
"https://javadoc.io/doc/org.yaml/snakeyaml/2.2/", "https://javadoc.io/doc/org.yaml/snakeyaml/2.2/",
"https://javadoc.io/doc/org.jetbrains/annotations/$annotationsVersion/", // Paper - we don't want Java 5 annotations "https://javadoc.io/doc/org.jetbrains/annotations/$annotationsVersion/",
// "https://javadoc.io/doc/net.md-5/bungeecord-chat/$bungeeCordChatVersion/", // Paper - don't link to bungee chat
// Paper start - add missing javadoc links
"https://javadoc.io/doc/org.joml/joml/1.10.8/index.html", "https://javadoc.io/doc/org.joml/joml/1.10.8/index.html",
"https://www.javadoc.io/doc/com.google.code.gson/gson/2.11.0", "https://www.javadoc.io/doc/com.google.code.gson/gson/2.11.0",
"https://jspecify.dev/docs/api/", "https://jspecify.dev/docs/api/",
// Paper end
// Paper start
"https://jd.advntr.dev/api/$adventureVersion/", "https://jd.advntr.dev/api/$adventureVersion/",
"https://jd.advntr.dev/key/$adventureVersion/", "https://jd.advntr.dev/key/$adventureVersion/",
"https://jd.advntr.dev/text-minimessage/$adventureVersion/", "https://jd.advntr.dev/text-minimessage/$adventureVersion/",
@ -198,8 +191,7 @@ tasks.withType<Javadoc> {
"https://jd.advntr.dev/text-logger-slf4j/$adventureVersion/", "https://jd.advntr.dev/text-logger-slf4j/$adventureVersion/",
"https://javadoc.io/doc/org.slf4j/slf4j-api/$slf4jVersion/", "https://javadoc.io/doc/org.slf4j/slf4j-api/$slf4jVersion/",
"https://javadoc.io/doc/org.apache.logging.log4j/log4j-api/$log4jVersion/", "https://javadoc.io/doc/org.apache.logging.log4j/log4j-api/$log4jVersion/",
// Paper end "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.7.3", // Paper
) )
options.tags("apiNote:a:API Note:") options.tags("apiNote:a:API Note:")
@ -227,20 +219,18 @@ tasks.withType<Javadoc> {
tasks.test { tasks.test {
useJUnitPlatform() useJUnitPlatform()
// Paper start - configure mockito agent that is needed in newer java versions
// configure mockito agent that is needed in newer java versions
val provider = objects.newInstance<MockitoAgentProvider>() val provider = objects.newInstance<MockitoAgentProvider>()
provider.fileCollection.from(mockitoAgent) provider.fileCollection.from(mockitoAgent)
jvmArgumentProviders.add(provider) jvmArgumentProviders.add(provider)
// Paper end - configure mockito agent that is needed in newer java versions
} }
// Paper start - compile tests with -parameters for better junit parameterized test names // Compile tests with -parameters for better junit parameterized test names
tasks.compileTestJava { tasks.compileTestJava {
options.compilerArgs.add("-parameters") options.compilerArgs.add("-parameters")
} }
// Paper end
// Paper start
val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks.ScanJarForBadCalls::class) { val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks.ScanJarForBadCalls::class) {
badAnnotations.add("Lio/papermc/paper/annotation/DoNotUse;") badAnnotations.add("Lio/papermc/paper/annotation/DoNotUse;")
jarToScan.set(tasks.jar.flatMap { it.archiveFile }) jarToScan.set(tasks.jar.flatMap { it.archiveFile })
@ -249,8 +239,7 @@ val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks.
tasks.check { tasks.check {
dependsOn(scanJar) dependsOn(scanJar)
} }
// Paper end
// Paper start
val scanJarForOldGeneratedCode = tasks.register("scanJarForOldGeneratedCode", io.papermc.paperweight.tasks.ScanJarForOldGeneratedCode::class) { val scanJarForOldGeneratedCode = tasks.register("scanJarForOldGeneratedCode", io.papermc.paperweight.tasks.ScanJarForOldGeneratedCode::class) {
mcVersion.set(providers.gradleProperty("mcVersion")) mcVersion.set(providers.gradleProperty("mcVersion"))
annotation.set("Lio/papermc/paper/generated/GeneratedFrom;") annotation.set("Lio/papermc/paper/generated/GeneratedFrom;")
@ -260,4 +249,3 @@ val scanJarForOldGeneratedCode = tasks.register("scanJarForOldGeneratedCode", io
tasks.check { tasks.check {
dependsOn(scanJarForOldGeneratedCode) dependsOn(scanJarForOldGeneratedCode)
} }
// Paper end

View file

@ -111,7 +111,7 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
} }
val alsoShade: Configuration by configurations.creating val alsoShade: Configuration by configurations.creating
// Paper start - configure mockito agent that is needed in newer java versions // Configure mockito agent that is needed in newer java versions
val mockitoAgent = configurations.register("mockitoAgent") val mockitoAgent = configurations.register("mockitoAgent")
abstract class MockitoAgentProvider : CommandLineArgumentProvider { abstract class MockitoAgentProvider : CommandLineArgumentProvider {
@get:CompileClasspath @get:CompileClasspath
@ -121,65 +121,63 @@ abstract class MockitoAgentProvider : CommandLineArgumentProvider {
return listOf("-javaagent:" + fileCollection.files.single().absolutePath) return listOf("-javaagent:" + fileCollection.files.single().absolutePath)
} }
} }
// Paper end - configure mockito agent that is needed in newer java versions
dependencies { dependencies {
implementation(project(":paper-api")) implementation(project(":paper-api"))
implementation("ca.spottedleaf:concurrentutil:0.0.2") // Paper - Add ConcurrentUtil dependency implementation("ca.spottedleaf:concurrentutil:0.0.2")
// Paper start
implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+ implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+
implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21 implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21
implementation("net.minecrell:terminalconsoleappender:1.3.0") implementation("net.minecrell:terminalconsoleappender:1.3.0")
implementation("net.kyori:adventure-text-serializer-ansi:4.17.0") // Keep in sync with adventureVersion from Paper-API build file implementation("net.kyori:adventure-text-serializer-ansi:4.17.0") // Keep in sync with adventureVersion from Paper-API build file
/* /*
Required to add the missing Log4j2Plugins.dat file from log4j-core Required to add the missing Log4j2Plugins.dat file from log4j-core
which has been removed by Mojang. Without it, log4j has to classload which has been removed by Mojang. Without it, log4j has to classload
all its classes to check if they are plugins. all its classes to check if they are plugins.
Scanning takes about 1-2 seconds so adding this speeds up the server start. Scanning takes about 1-2 seconds so adding this speeds up the server start.
*/ */
implementation("org.apache.logging.log4j:log4j-core:2.19.0") // Paper - implementation implementation("org.apache.logging.log4j:log4j-core:2.19.0")
log4jPlugins.annotationProcessorConfigurationName("org.apache.logging.log4j:log4j-core:2.19.0") // Paper - Needed to generate meta for our Log4j plugins log4jPlugins.annotationProcessorConfigurationName("org.apache.logging.log4j:log4j-core:2.19.0") // Needed to generate meta for our Log4j plugins
runtimeOnly(log4jPlugins.output) runtimeOnly(log4jPlugins.output)
alsoShade(log4jPlugins.output) alsoShade(log4jPlugins.output)
implementation("io.netty:netty-codec-haproxy:4.1.97.Final") // Paper - Add support for proxy protocol
// Paper end
implementation("org.apache.logging.log4j:log4j-iostreams:2.24.1") // Paper - remove exclusion
implementation("org.ow2.asm:asm-commons:9.7.1")
implementation("org.spongepowered:configurate-yaml:4.2.0-SNAPSHOT") // Paper - config files
implementation("commons-lang:commons-lang:2.6")
runtimeOnly("org.xerial:sqlite-jdbc:3.47.0.0")
runtimeOnly("com.mysql:mysql-connector-j:9.1.0")
runtimeOnly("com.lmax:disruptor:3.4.4") // Paper
// Paper start - Use Velocity cipher
implementation("com.velocitypowered:velocity-native:3.3.0-SNAPSHOT") { implementation("com.velocitypowered:velocity-native:3.3.0-SNAPSHOT") {
isTransitive = false isTransitive = false
} }
// Paper end - Use Velocity cipher implementation("io.netty:netty-codec-haproxy:4.1.97.Final") // Add support for proxy protocol
implementation("org.apache.logging.log4j:log4j-iostreams:2.24.1")
implementation("org.ow2.asm:asm-commons:9.7.1")
implementation("org.spongepowered:configurate-yaml:4.2.0-SNAPSHOT")
implementation("commons-lang:commons-lang:2.6")
runtimeOnly("org.xerial:sqlite-jdbc:3.47.0.0")
runtimeOnly("com.mysql:mysql-connector-j:9.1.0")
runtimeOnly("com.lmax:disruptor:3.4.4")
runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.6") runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.6")
runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18") runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18")
runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18") runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18")
testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test testImplementation("io.github.classgraph:classgraph:4.8.47") // For mob goal test
testImplementation("org.junit.jupiter:junit-jupiter:5.10.2") testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
testImplementation("org.junit.platform:junit-platform-suite-engine:1.10.0") testImplementation("org.junit.platform:junit-platform-suite-engine:1.10.0")
testImplementation("org.hamcrest:hamcrest:2.2") testImplementation("org.hamcrest:hamcrest:2.2")
testImplementation("org.mockito:mockito-core:5.14.1") testImplementation("org.mockito:mockito-core:5.14.1")
mockitoAgent("org.mockito:mockito-core:5.14.1") { isTransitive = false } // Paper - configure mockito agent that is needed in newer java versions mockitoAgent("org.mockito:mockito-core:5.14.1") { isTransitive = false } // Configure mockito agent that is needed in newer java versions
testImplementation("org.ow2.asm:asm-tree:9.7.1") testImplementation("org.ow2.asm:asm-tree:9.7.1")
testImplementation("org.junit-pioneer:junit-pioneer:2.2.0") // Paper - CartesianTest testImplementation("org.junit-pioneer:junit-pioneer:2.2.0") // CartesianTest
implementation("net.neoforged:srgutils:1.0.9") // Paper - mappings handling
implementation("net.neoforged:AutoRenamingTool:2.0.3") // Paper - remap plugins implementation("net.neoforged:srgutils:1.0.9") // Mappings handling
// Paper start - Remap reflection implementation("net.neoforged:AutoRenamingTool:2.0.3") // Remap plugins
// Remap reflection
val reflectionRewriterVersion = "0.0.3" val reflectionRewriterVersion = "0.0.3"
implementation("io.papermc:reflection-rewriter:$reflectionRewriterVersion") implementation("io.papermc:reflection-rewriter:$reflectionRewriterVersion")
implementation("io.papermc:reflection-rewriter-runtime:$reflectionRewriterVersion") implementation("io.papermc:reflection-rewriter-runtime:$reflectionRewriterVersion")
implementation("io.papermc:reflection-rewriter-proxy-generator:$reflectionRewriterVersion") implementation("io.papermc:reflection-rewriter-proxy-generator:$reflectionRewriterVersion")
// Paper end - Remap reflection
// Paper start - spark // Spark
implementation("me.lucko:spark-api:0.1-20240720.200737-2") implementation("me.lucko:spark-api:0.1-20240720.200737-2")
implementation("me.lucko:spark-paper:1.10.119-SNAPSHOT") implementation("me.lucko:spark-paper:1.10.119-SNAPSHOT")
// Paper end - spark
} }
tasks.jar { tasks.jar {
@ -190,13 +188,13 @@ tasks.jar {
val buildTime = if (build != null) Instant.now() else Instant.EPOCH val buildTime = if (build != null) Instant.now() else Instant.EPOCH
val gitHash = git.exec(providers, "rev-parse", "--short=7", "HEAD").get().trim() val gitHash = git.exec(providers, "rev-parse", "--short=7", "HEAD").get().trim()
val implementationVersion = "$mcVersion-${build ?: "DEV"}-$gitHash" val implementationVersion = "$mcVersion-${build ?: "DEV"}-$gitHash"
val date = git.exec(providers, "show", "-s", "--format=%ci", gitHash).get().trim() // Paper val date = git.exec(providers, "show", "-s", "--format=%ci", gitHash).get().trim()
val gitBranch = git.exec(providers, "rev-parse", "--abbrev-ref", "HEAD").get().trim() // Paper val gitBranch = git.exec(providers, "rev-parse", "--abbrev-ref", "HEAD").get().trim()
attributes( attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main", "Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "Paper", "Implementation-Title" to "Paper",
"Implementation-Version" to implementationVersion, "Implementation-Version" to implementationVersion,
"Implementation-Vendor" to date, // Paper "Implementation-Vendor" to date,
"Specification-Title" to "Paper", "Specification-Title" to "Paper",
"Specification-Version" to project.version, "Specification-Version" to project.version,
"Specification-Vendor" to "Paper Team", "Specification-Vendor" to "Paper Team",
@ -204,8 +202,8 @@ tasks.jar {
"Brand-Name" to "Paper", "Brand-Name" to "Paper",
"Build-Number" to (build ?: ""), "Build-Number" to (build ?: ""),
"Build-Time" to buildTime.toString(), "Build-Time" to buildTime.toString(),
"Git-Branch" to gitBranch, // Paper "Git-Branch" to gitBranch,
"Git-Commit" to gitHash, // Paper "Git-Commit" to gitHash,
) )
for (tld in setOf("net", "com", "org")) { for (tld in setOf("net", "com", "org")) {
attributes("$tld/bukkit", "Sealed" to true) attributes("$tld/bukkit", "Sealed" to true)
@ -213,13 +211,11 @@ tasks.jar {
} }
} }
// Paper start - compile tests with -parameters for better junit parameterized test names // Compile tests with -parameters for better junit parameterized test names
tasks.compileTestJava { tasks.compileTestJava {
options.compilerArgs.add("-parameters") options.compilerArgs.add("-parameters")
} }
// Paper end
// Paper start
val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks.ScanJarForBadCalls::class) { val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks.ScanJarForBadCalls::class) {
badAnnotations.add("Lio/papermc/paper/annotation/DoNotUse;") badAnnotations.add("Lio/papermc/paper/annotation/DoNotUse;")
jarToScan.set(tasks.jar.flatMap { it.archiveFile }) jarToScan.set(tasks.jar.flatMap { it.archiveFile })
@ -228,8 +224,8 @@ val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks.
tasks.check { tasks.check {
dependsOn(scanJar) dependsOn(scanJar)
} }
// Paper end
// Paper start - use TCA for console improvements // Use TCA for console improvements
tasks.jar { tasks.jar {
val archiveOperations = services.archiveOperations val archiveOperations = services.archiveOperations
from(alsoShade.elements.map { from(alsoShade.elements.map {
@ -242,7 +238,6 @@ tasks.jar {
} }
}) })
} }
// Paper end - use TCA for console improvements
tasks.test { tasks.test {
include("**/**TestSuite.class") include("**/**TestSuite.class")
@ -251,11 +246,11 @@ tasks.test {
forkEvery = 1 forkEvery = 1
excludeTags("Slow") excludeTags("Slow")
} }
// Paper start - configure mockito agent that is needed in newer java versions
// Configure mockito agent that is needed in newer java versions
val provider = objects.newInstance<MockitoAgentProvider>() val provider = objects.newInstance<MockitoAgentProvider>()
provider.fileCollection.from(mockitoAgent) provider.fileCollection.from(mockitoAgent)
jvmArgumentProviders.add(provider) jvmArgumentProviders.add(provider)
// Paper end - configure mockito agent that is needed in newer java versions
} }
fun TaskContainer.registerRunTask( fun TaskContainer.registerRunTask(