simplify dependency configuration

This commit is contained in:
dfsek 2022-05-05 08:25:30 -07:00
parent 42fb3642f9
commit 41e7ad35bd
40 changed files with 72 additions and 88 deletions

View File

@ -45,7 +45,7 @@ afterEvaluate {
forSubProjects(":common:addons") { forSubProjects(":common:addons") {
dependencies { dependencies {
"compileOnly"(project(":common:api")) "compileOnly"(project(":common:api"))
"shadedImplementation"("net.jafama", "jafama", Versions.Libraries.Internal.jafama) "implementation"("net.jafama", "jafama", Versions.Libraries.Internal.jafama)
"testImplementation"("net.jafama", "jafama", Versions.Libraries.Internal.jafama) "testImplementation"("net.jafama", "jafama", Versions.Libraries.Internal.jafama)
"testImplementation"(project(":common:api")) "testImplementation"(project(":common:api"))
} }

View File

@ -6,25 +6,9 @@ import org.gradle.kotlin.dsl.getting
import org.gradle.kotlin.dsl.repositories import org.gradle.kotlin.dsl.repositories
fun Project.configureDependencies() { fun Project.configureDependencies() {
val api by configurations.getting
val implementation by configurations.getting
val testImplementation by configurations.getting val testImplementation by configurations.getting
val compileOnly by configurations.getting val compileOnly by configurations.getting
val shaded by configurations.creating
@Suppress("UNUSED_VARIABLE")
val shadedApi by configurations.creating {
shaded.extendsFrom(this)
api.extendsFrom(this)
}
@Suppress("UNUSED_VARIABLE")
val shadedImplementation by configurations.creating {
shaded.extendsFrom(this)
implementation.extendsFrom(this)
}
repositories { repositories {
mavenCentral() mavenCentral()
gradlePluginPortal() gradlePluginPortal()

View File

@ -122,8 +122,6 @@ fun Project.configureDistribution() {
// Tell shadow to download the packs // Tell shadow to download the packs
dependsOn(downloadDefaultPacks) dependsOn(downloadDefaultPacks)
configurations = listOf(project.configurations["shaded"])
archiveClassifier.set("shaded") archiveClassifier.set("shaded")
setVersion(project.version) setVersion(project.version)
relocate("org.apache.commons", "com.dfsek.terra.lib.commons") relocate("org.apache.commons", "com.dfsek.terra.lib.commons")

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,6 +1,6 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi("com.googlecode.json-simple:json-simple:1.1.1") api("com.googlecode.json-simple:json-simple:1.1.1")
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,6 +1,6 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedImplementation("com.dfsek.tectonic:yaml:${Versions.Libraries.tectonic}") implementation("com.dfsek.tectonic:yaml:${Versions.Libraries.tectonic}")
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,8 +1,8 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi("commons-io:commons-io:2.6") api("commons-io:commons-io:2.7")
shadedImplementation("com.dfsek.tectonic:yaml:${Versions.Libraries.tectonic}") implementation("com.dfsek.tectonic:yaml:${Versions.Libraries.tectonic}")
} }
tasks.withType<Jar> { tasks.withType<Jar> {

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -1,5 +1,5 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }

View File

@ -11,9 +11,9 @@ repositories {
} }
dependencies { dependencies {
shadedApi("commons-io:commons-io:2.6") api("commons-io:commons-io:2.6")
shadedApi("com.github.Querz:NBT:6.1") api("com.github.Querz:NBT:6.1")
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }
tasks.named<ShadowJar>("shadowJar") { tasks.named<ShadowJar>("shadowJar") {

View File

@ -8,8 +8,8 @@ plugins {
} }
dependencies { dependencies {
shadedApi("commons-io:commons-io:2.6") api("commons-io:commons-io:2.6")
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
} }
tasks.named<ShadowJar>("shadowJar") { tasks.named<ShadowJar>("shadowJar") {

View File

@ -1,7 +1,7 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
shadedApi(project(":common:addons:chunk-generator-noise-3d")) compileOnlyApi(project(":common:addons:chunk-generator-noise-3d"))
shadedApi(project(":common:addons:structure-terrascript-loader")) compileOnlyApi(project(":common:addons:structure-terrascript-loader"))
} }

View File

@ -1,7 +1,7 @@
version = version("0.1.0") version = version("0.1.0")
dependencies { dependencies {
shadedApi(project(":common:addons:manifest-addon-loader")) compileOnlyApi(project(":common:addons:manifest-addon-loader"))
shadedApi(project(":common:addons:config-noise-function")) compileOnlyApi(project(":common:addons:config-noise-function"))
shadedApi(project(":common:addons:structure-terrascript-loader")) compileOnlyApi(project(":common:addons:structure-terrascript-loader"))
} }

View File

@ -1,11 +1,11 @@
dependencies { dependencies {
shadedApi("ca.solo-studios", "strata", Versions.Libraries.strata) api("ca.solo-studios", "strata", Versions.Libraries.strata)
shadedApi("org.slf4j", "slf4j-api", Versions.Libraries.slf4j) api("org.slf4j", "slf4j-api", Versions.Libraries.slf4j)
shadedApi("cloud.commandframework", "cloud-core", Versions.Libraries.cloud) api("cloud.commandframework", "cloud-core", Versions.Libraries.cloud)
shadedApi("com.dfsek", "paralithic", Versions.Libraries.paralithic) api("com.dfsek", "paralithic", Versions.Libraries.paralithic)
shadedApi("com.dfsek.tectonic", "common", Versions.Libraries.tectonic) api("com.dfsek.tectonic", "common", Versions.Libraries.tectonic)
shadedImplementation("net.jafama", "jafama", Versions.Libraries.Internal.jafama) implementation("net.jafama", "jafama", Versions.Libraries.Internal.jafama)
} }

View File

@ -1,13 +1,13 @@
dependencies { dependencies {
shadedApi(project(":common:api")) api(project(":common:api"))
shadedApi(project(":common:implementation:bootstrap-addon-loader")) api(project(":common:implementation:bootstrap-addon-loader"))
shadedImplementation("commons-io", "commons-io", Versions.Libraries.Internal.apacheIO) implementation("commons-io", "commons-io", Versions.Libraries.Internal.apacheIO)
shadedImplementation("org.apache.commons", "commons-text", Versions.Libraries.Internal.apacheText) implementation("org.apache.commons", "commons-text", Versions.Libraries.Internal.apacheText)
shadedImplementation("com.dfsek.tectonic", "yaml", Versions.Libraries.tectonic) implementation("com.dfsek.tectonic", "yaml", Versions.Libraries.tectonic)
shadedImplementation("net.jafama", "jafama", Versions.Libraries.Internal.jafama) implementation("net.jafama", "jafama", Versions.Libraries.Internal.jafama)
implementation("org.ow2.asm", "asm", Versions.Libraries.Internal.asm) implementation("org.ow2.asm", "asm", Versions.Libraries.Internal.asm)
} }

View File

@ -1,3 +1,3 @@
dependencies { dependencies {
"shadedApi"(project(":common:api")) compileOnlyApi(project(":common:api"))
} }

View File

@ -14,21 +14,21 @@ val paperURL = "https://papermc.io/api/v2/projects/paper/versions/%version%/buil
val purpurURL = "https://api.pl3x.net/v2/purpur/%version%/latest/download" val purpurURL = "https://api.pl3x.net/v2/purpur/%version%/latest/download"
dependencies { dependencies {
shadedApi(project(":common:implementation:base")) api(project(":common:implementation:base"))
shadedApi("org.slf4j:slf4j-api:1.8.0-beta4") { api("org.slf4j:slf4j-api:1.8.0-beta4") {
because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.") because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.")
} }
shadedImplementation("org.apache.logging.log4j", "log4j-slf4j18-impl", Versions.Libraries.log4j_slf4j_impl) { implementation("org.apache.logging.log4j", "log4j-slf4j18-impl", Versions.Libraries.log4j_slf4j_impl) {
because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.") because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.")
} }
compileOnly("io.papermc.paper", "paper-api", Versions.Bukkit.paper) compileOnly("io.papermc.paper", "paper-api", Versions.Bukkit.paper)
shadedImplementation("io.papermc", "paperlib", Versions.Bukkit.paperLib) implementation("io.papermc", "paperlib", Versions.Bukkit.paperLib)
shadedApi("com.google.guava:guava:30.0-jre") api("com.google.guava:guava:30.0-jre")
shadedApi("cloud.commandframework", "cloud-paper", Versions.Libraries.cloud) api("cloud.commandframework", "cloud-paper", Versions.Libraries.cloud)
} }
val jvmFlags = listOf( val jvmFlags = listOf(

View File

@ -3,15 +3,15 @@ repositories {
} }
dependencies { dependencies {
shadedApi("commons-io:commons-io:2.6") api("commons-io:commons-io:2.7")
shadedApi("com.github.Querz:NBT:6.1") api("com.github.Querz:NBT:6.1")
shadedApi(project(":common:implementation:base")) api(project(":common:implementation:base"))
shadedImplementation("com.google.guava:guava:31.0.1-jre") implementation("com.google.guava:guava:31.0.1-jre")
shadedImplementation("ch.qos.logback:logback-classic:1.2.7") implementation("ch.qos.logback:logback-classic:1.2.9")
shadedImplementation("net.jafama", "jafama", Versions.Libraries.Internal.jafama) implementation("net.jafama", "jafama", Versions.Libraries.Internal.jafama)
} }
tasks.withType<Jar>() { tasks.withType<Jar>() {

View File

@ -8,7 +8,7 @@ plugins {
} }
dependencies { dependencies {
shadedApi(project(":common:implementation:base")) api(project(":common:implementation:base"))
minecraft("com.mojang:minecraft:${Versions.Fabric.minecraft}") minecraft("com.mojang:minecraft:${Versions.Fabric.minecraft}")
mappings("net.fabricmc:yarn:${Versions.Fabric.yarn}:v2") mappings("net.fabricmc:yarn:${Versions.Fabric.yarn}:v2")

View File

@ -13,7 +13,9 @@ import com.dfsek.terra.fabric.util.FabricUtil;
@Mixin(DataPackContents.class) @Mixin(DataPackContents.class)
public class DataPackContentsMixin { public class DataPackContentsMixin {
/*
* #refresh populates all tags in the registries
*/
@Inject(method = "refresh(Lnet/minecraft/util/registry/DynamicRegistryManager;)V", at = @At("RETURN")) @Inject(method = "refresh(Lnet/minecraft/util/registry/DynamicRegistryManager;)V", at = @At("RETURN"))
private void injectReload(DynamicRegistryManager dynamicRegistryManager, CallbackInfo ci) { private void injectReload(DynamicRegistryManager dynamicRegistryManager, CallbackInfo ci) {
FabricUtil.registerTags(dynamicRegistryManager.get(Registry.BIOME_KEY)); FabricUtil.registerTags(dynamicRegistryManager.get(Registry.BIOME_KEY));

View File

@ -3,7 +3,7 @@ val platformOverrides = mapOf(
) )
dependencies { dependencies {
shadedApi(project(":common:implementation")) api(project(":common:implementation:base"))
} }
val taskSet = HashSet<AbstractArchiveTask>() val taskSet = HashSet<AbstractArchiveTask>()

View File

@ -9,12 +9,12 @@ repositories {
} }
dependencies { dependencies {
shadedApi(project(":common:implementation:base")) api(project(":common:implementation:base"))
shadedApi("org.slf4j:slf4j-api:1.8.0-beta4") { api("org.slf4j:slf4j-api:1.8.0-beta4") {
because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.") because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.")
} }
shadedImplementation("org.apache.logging.log4j", "log4j-slf4j18-impl", Versions.Libraries.log4j_slf4j_impl) { implementation("org.apache.logging.log4j", "log4j-slf4j18-impl", Versions.Libraries.log4j_slf4j_impl) {
because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.") because("Minecraft 1.17+ includes slf4j 1.8.0-beta4, so we need to shade it for other versions.")
} }