From 0c4912b771f368558f76ae3b72220de079583f9c Mon Sep 17 00:00:00 2001 From: Fury_Phoenix <64714532+Phoenix-Starlight@users.noreply.github.com> Date: Thu, 14 Dec 2023 14:22:49 -0800 Subject: [PATCH] Unshadow mixin processor There is no way to prevent the relocator transformation so we depend on the unshadowed project that pulls the shadowed project Cleanup client validator shadow jar --- annotation-processor-unshadow/build.gradle | 27 +++++++++++++++++++ .../mixinAp/annotation/MixinProcessor.java | 0 annotation-processor/build.gradle | 6 ++--- .../modernfix.mod-common-conventions.gradle | 2 +- gradle.properties | 1 + settings.gradle | 2 +- 6 files changed, 32 insertions(+), 6 deletions(-) create mode 100644 annotation-processor-unshadow/build.gradle rename {annotation-processor => annotation-processor-unshadow}/src/main/java/org/fury_phoenix/mixinAp/annotation/MixinProcessor.java (100%) diff --git a/annotation-processor-unshadow/build.gradle b/annotation-processor-unshadow/build.gradle new file mode 100644 index 00000000..101a5c08 --- /dev/null +++ b/annotation-processor-unshadow/build.gradle @@ -0,0 +1,27 @@ +plugins { + id 'java-library' + id 'com.diffplug.spotless' +} + +repositories { + mavenCentral() +} + +dependencies { + implementation 'com.google.guava:guava:21.0' + annotationProcessor 'com.google.auto.service:auto-service:1.1.1' + compileOnly 'com.google.auto.service:auto-service:1.1.1' + + implementation project(":annotation-processor") +} + +tasks.withType(JavaCompile) { + options.compilerArgs += '--enable-preview' +} + +spotless { + java { + removeUnusedImports() + } +} +version = '1.1.2' diff --git a/annotation-processor/src/main/java/org/fury_phoenix/mixinAp/annotation/MixinProcessor.java b/annotation-processor-unshadow/src/main/java/org/fury_phoenix/mixinAp/annotation/MixinProcessor.java similarity index 100% rename from annotation-processor/src/main/java/org/fury_phoenix/mixinAp/annotation/MixinProcessor.java rename to annotation-processor-unshadow/src/main/java/org/fury_phoenix/mixinAp/annotation/MixinProcessor.java diff --git a/annotation-processor/build.gradle b/annotation-processor/build.gradle index e01ae249..7da8f5e2 100644 --- a/annotation-processor/build.gradle +++ b/annotation-processor/build.gradle @@ -11,11 +11,7 @@ repositories { } dependencies { - implementation 'com.google.guava:guava:21.0' implementation 'com.google.code.gson:gson:2.10.1' - annotationProcessor 'com.google.auto.service:auto-service:1.1.1' - compileOnly 'com.google.auto.service:auto-service:1.1.1' - implementation "net.fabricmc:sponge-mixin:0.12.5+" // Platform classes // "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}" @@ -32,6 +28,8 @@ shadowJar { } exclude 'META-INF/services/org.spongepowered*' exclude 'META-INF/services/cpw*' + exclude 'META-INF/maven*' + exclude 'LICENSE.txt' relocate ('org.spongepowered', 'shadow.org.fury_phoenix.shadow.spongepowered') minimize() } diff --git a/buildSrc/src/main/groovy/modernfix.mod-common-conventions.gradle b/buildSrc/src/main/groovy/modernfix.mod-common-conventions.gradle index 498a21ed..782ba2c9 100644 --- a/buildSrc/src/main/groovy/modernfix.mod-common-conventions.gradle +++ b/buildSrc/src/main/groovy/modernfix.mod-common-conventions.gradle @@ -17,7 +17,7 @@ dependencies { } } implementation project(":annotations") - annotationProcessor project(path: ":annotation-processor", configuration: "shadow") + annotationProcessor project(":annotation-processor-unshadow") } project.sourceSets { diff --git a/gradle.properties b/gradle.properties index 8dee0a7c..a6657167 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,6 +16,7 @@ refined_storage_version=3807951 kubejs_version=1605.3.19-build.299 ctm_version=MC1.16.1-1.1.2.6 supported_minecraft_versions=1.16.4,1.16.5 +// Look up maven coordinates when changing shadow_version shadow_version=7.1.2 fabric_loader_version=0.14.21 diff --git a/settings.gradle b/settings.gradle index 6a137b83..508e8db8 100644 --- a/settings.gradle +++ b/settings.gradle @@ -15,7 +15,7 @@ pluginManagement { } include("annotation-processor") -include("annotation-processor-hack") +include("annotation-processor-unshadow") include("annotations") include("test_agent") include("common")