Update transformers to 5.2.78

This commit is contained in:
shedaniel
2023-11-15 02:43:37 +08:00
parent c3b40e0a6c
commit e5708629be
3 changed files with 47 additions and 9 deletions

View File

@@ -5,5 +5,5 @@ loom_version_010Legacy=0.10.0.171
loom_version_010=0.10.0.188
loom_version_011=0.11.0.217
loom_version_11=1.1.313
transformer_version=5.2.77
transformer_version=5.2.78
base_version=3.4

View File

@@ -30,7 +30,7 @@ import java.util.jar.JarOutputStream
import java.util.jar.Manifest
open class ArchitectPluginExtension(val project: Project) {
var transformerVersion = "5.2.77"
var transformerVersion = "5.2.78"
var injectablesVersion = "1.0.10"
var minecraft = ""
private var compileOnly = false
@@ -265,6 +265,7 @@ open class ArchitectPluginExtension(val project: Project) {
data class CommonSettings(
val loaders: MutableSet<ModLoader> = LinkedHashSet(),
val platformPackages: MutableMap<ModLoader, String> = mutableMapOf(),
) {
constructor(loaders: Array<String>) : this() {
this.loaders.addAll(loaders.map { ModLoader.valueOf(it) })
@@ -308,6 +309,14 @@ open class ArchitectPluginExtension(val project: Project) {
fun clear() {
loaders.clear()
}
fun platformPackage(loader: String, packageName: String) {
platformPackages[ModLoader.valueOf(loader)] = packageName
}
fun platformPackage(loader: ModLoader, packageName: String) {
platformPackages[loader] = packageName
}
}
fun platformSetupLoomIde() {
@@ -391,7 +400,7 @@ open class ArchitectPluginExtension(val project: Project) {
project.tasks.register("transformProduction${loader.titledId}", TransformingTask::class.java) {
it.group = "Architectury"
it.platform = loader.id
loader.transformProduction(it, loom)
loader.transformProduction(it, loom, settings)
it.archiveClassifier.set("transformProduction${loader.titledId}")
it.input.set(jarTask.archiveFile)
@@ -439,7 +448,8 @@ data class Transform(
val project: Project,
val devConfigName: String,
val transformers: MutableList<Function<Path, TransformerPair>> = mutableListOf(),
var envAnnotationProvider: String = "net.fabricmc:fabric-loader:+"
var envAnnotationProvider: String = "net.fabricmc:fabric-loader:+",
var platformPackage: String? = null,
) {
operator fun plusAssign(transformer: TransformerPair) {
transformers.add(Function { transformer })

View File

@@ -7,7 +7,7 @@ import dev.architectury.transformer.transformers.*
open class ModLoader(
val id: String,
val transformDevelopment: Transform.() -> Unit,
val transformProduction: TransformingTask.(loom: LoomInterface) -> Unit,
val transformProduction: TransformingTask.(loom: LoomInterface, settings: ArchitectPluginExtension.CommonSettings) -> Unit,
) {
init {
LOADERS[id] = this
@@ -23,20 +23,27 @@ open class ModLoader(
val FABRIC = ModLoader(
id = "fabric",
transformDevelopment = {
val transform = this
this += RuntimeMixinRefmapDetector::class.java
this += GenerateFakeFabricMod::class.java
add(TransformExpectPlatform::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
if (transform.platformPackage != null) {
this[BuiltinProperties.PLATFORM_PACKAGE] = transform.platformPackage!!
}
}
add(RemapInjectables::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
}
this += TransformPlatformOnly::class.java
},
transformProduction = {
transformProduction = { _, settings ->
this += RemapMixinVariables()
add(TransformExpectPlatform()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
settings.platformPackages[valueOf("fabric")]?.let { platformPackage ->
this[BuiltinProperties.PLATFORM_PACKAGE] = platformPackage
}
}
add(RemapInjectables()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
@@ -49,9 +56,13 @@ open class ModLoader(
val FORGE = ModLoader(
id = "forge",
transformDevelopment = {
val transform = this
this += RuntimeMixinRefmapDetector::class.java
add(TransformExpectPlatform::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
if (transform.platformPackage != null) {
this[BuiltinProperties.PLATFORM_PACKAGE] = transform.platformPackage!!
}
}
add(RemapInjectables::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
@@ -63,9 +74,12 @@ open class ModLoader(
this += GenerateFakeForgeMod::class.java
this += FixForgeMixin::class.java
},
transformProduction = { loom ->
transformProduction = { loom, settings ->
add(TransformExpectPlatform()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
settings.platformPackages[valueOf("forge")]?.let { platformPackage ->
this[BuiltinProperties.PLATFORM_PACKAGE] = platformPackage
}
}
add(RemapInjectables()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
@@ -84,8 +98,12 @@ open class ModLoader(
val NEOFORGE = object : ModLoader(
id = "neoforge",
transformDevelopment = {
val transform = this
add(TransformExpectPlatform::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
if (transform.platformPackage != null) {
this[BuiltinProperties.PLATFORM_PACKAGE] = transform.platformPackage!!
}
}
add(RemapInjectables::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
@@ -96,9 +114,12 @@ open class ModLoader(
this += TransformNeoForgeEnvironment::class.java
this += GenerateFakeNeoForgeMod::class.java
},
transformProduction = { loom ->
transformProduction = { _, settings ->
add(TransformExpectPlatform()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
settings.platformPackages[valueOf("neoforge")]?.let { platformPackage ->
this[BuiltinProperties.PLATFORM_PACKAGE] = platformPackage
}
}
add(RemapInjectables()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
@@ -116,10 +137,14 @@ open class ModLoader(
val QUILT = ModLoader(
id = "quilt",
transformDevelopment = {
val transform = this
this += RuntimeMixinRefmapDetector::class.java
this += GenerateFakeQuiltMod::class.java
add(TransformExpectPlatform::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
if (transform.platformPackage != null) {
this[BuiltinProperties.PLATFORM_PACKAGE] = transform.platformPackage!!
}
}
add(RemapInjectables::class.java) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
@@ -127,10 +152,13 @@ open class ModLoader(
this += TransformPlatformOnly::class.java
envAnnotationProvider = "org.quiltmc:quilt-loader:+"
},
transformProduction = {
transformProduction = { _, settings ->
this += RemapMixinVariables()
add(TransformExpectPlatform()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)
settings.platformPackages[valueOf("quilt")]?.let { platformPackage ->
this[BuiltinProperties.PLATFORM_PACKAGE] = platformPackage
}
}
add(RemapInjectables()) { file ->
this[BuiltinProperties.UNIQUE_IDENTIFIER] = projectGeneratedPackage(project, file)