Single relocation declaration

- Add gradle/runtime-relocations.gradle as the one runtime-download relocation map
- Read the slimJar relocations and shrinkRelocations from that map
- Pass the derived relocation prefixes into BukkitArtifactVerifier
- Drop the duplicate jar size check the packaging audit already enforces
This commit is contained in:
Brian Neumann-Fopiano committed 2026-09-08 03:40:29 -04:00
1 parent c83d6964f1
commit 6e3e1f3c64
5 files changed
+64 -74

No files matched your search

+5 -18
View File
@@ -49,6 +49,7 @@ plugins {
}
apply plugin: 'art.arcane.volmit-packaging'
apply from: file('gradle/runtime-relocations.gradle')
group = 'art.arcane'
version = providers.gradleProperty('irisVersion').getOrElse('4.1.0-26.2')
@@ -87,8 +88,9 @@ String bukkitArtifactName = irisArtifactName('CraftBukkit', bukkitMinecraftRange
String fabricArtifactName = irisArtifactName('Fabric', "${minecraftVersion}+${loaderDisplayVersion(fabricLoaderVersion)}")
String forgeArtifactName = irisArtifactName('Forge', "${minecraftVersion}+${loaderDisplayVersion(forgeVersion)}")
String neoForgeArtifactName = irisArtifactName('NeoForge', "${minecraftVersion}+${loaderDisplayVersion(neoForgeVersion)}")
Map<String, String> runtimeDownloadRelocations = (Map<String, String>) ext.runtimeDownloadRelocations
List<String> runtimeDownloadedPrefixes = (List<String>) ext.runtimeDownloadedPrefixes
File pluginOutDirectory = layout.projectDirectory.dir('../PluginOuts').asFile
long maximumBukkitArtifactBytes = 7_600_000L
apply plugin: ApiGenerator
// Where `buildAll` drops the per-platform jars for a local test server. Use the approved sibling
@@ -561,7 +563,7 @@ tasks.register('verifyBukkitArtifact') {
artifact,
requiredBukkitArtifactEntries,
16,
maximumBukkitArtifactBytes)
runtimeDownloadedPrefixes)
logger.lifecycle("Verified ${artifact.name} packaging and class reference graph")
}
}
@@ -757,22 +759,7 @@ pluginPackaging {
shrinkLibraries.from(provider { project(':core').configurations.compileClasspath })
shrinkLibraries.from(provider { project(':adapters:bukkit:plugin').configurations.compileClasspath })
shrinkLibraries.from(provider { project(':adapters:bukkit:nms:v26_2_R1').configurations.compileClasspath })
shrinkRelocations = [
'com.dfsek.paralithic': 'art.arcane.iris.util.paralithic',
'com.google.gson': 'art.arcane.iris.util.gson',
'com.googlecode.concurrentlinkedhashmap': 'art.arcane.iris.util.lru',
'io.papermc.lib': 'art.arcane.iris.util.paper',
'net.kyori': 'art.arcane.iris.util.kyori',
'org.bstats': 'art.arcane.iris.util.metrics',
'org.apache.maven': 'art.arcane.iris.util.maven',
'org.codehaus.plexus': 'art.arcane.iris.util.plexus',
'org.eclipse.sisu': 'art.arcane.iris.util.sisu',
'org.eclipse.aether': 'art.arcane.iris.util.aether',
'com.google.inject': 'art.arcane.iris.util.guice',
'org.dom4j': 'art.arcane.iris.util.dom4j',
'org.jaxen': 'art.arcane.iris.util.jaxen',
'com.github.benmanes.caffeine': 'art.arcane.iris.util.caffeine'
]
shrinkRelocations = runtimeDownloadRelocations
}
}
}