From 412ab2c1d056efc413d771c5f917d96d369719ff Mon Sep 17 00:00:00 2001 From: Big Duckie Date: Wed, 1 Jan 2025 14:25:39 -0700 Subject: [PATCH] Fix up some issues. --- build.gradle | 102 ++++++++++-------- gradle.properties | 14 +-- gradle/wrapper/gradle-wrapper.properties | 4 +- jitpack.yml | 5 - .../java/draylar/omegaconfig/OmegaConfig.java | 11 +- .../omegaconfig/mixin/ClientMixin.java | 3 +- .../src/main/resources/fabric.mod.json | 21 ++-- settings.gradle | 2 +- .../config/StructuresConfigTest.java | 2 +- 9 files changed, 90 insertions(+), 74 deletions(-) delete mode 100644 jitpack.yml diff --git a/build.gradle b/build.gradle index ba03a7e..3cb8600 100644 --- a/build.gradle +++ b/build.gradle @@ -1,57 +1,25 @@ plugins { - id "fabric-loom" version "1.6-SNAPSHOT" - id "maven-publish" - id "java-library" + id 'fabric-loom' version '1.8-SNAPSHOT' + id 'maven-publish' } +if (System.getenv("VERSION")) { + project.mod_version = System.getenv("VERSION") +} + +version = "${project.mod_version}" group = "dev.draylar" -archivesBaseName = "omega-config" -subprojects { - apply plugin: 'fabric-loom' - apply plugin: 'maven-publish' - - archivesBaseName = project.name - group = "dev.draylar.${project.group}" - - // Only publish for submodules (not the root project) - add standard jar, + sources & development jar - publishing { - repositories { - maven { - name = "draylarRepository" - url = "https://maven.draylar.dev/releases" - credentials(PasswordCredentials) - authentication { - basic(BasicAuthentication) - } - } - } - - publications { - mavenJava(MavenPublication) { - from components.java - } - } - } - - // Add sources & javadoc artifacts - java { - withSourcesJar() - withJavadocJar() - } +base { + archivesName = "omega-config" } allprojects { apply plugin: "fabric-loom" sourceCompatibility = targetCompatibility = JavaVersion.VERSION_17 - version = project.mod_version + "+" + project.minecraft_version + version = project.mod_version - repositories { - maven { - name = "FabricMC" - url = "https://maven.fabricmc.net" - } - } + repositories {} dependencies { minecraft "com.mojang:minecraft:${project.minecraft_version}" @@ -68,7 +36,8 @@ allprojects { } } - tasks.withType(JavaCompile) { + tasks.withType(JavaCompile).configureEach { + it.options.release = 17 javadoc.options.addStringOption('Xdoclint:none', '-quiet') } @@ -79,6 +48,51 @@ allprojects { } } +subprojects { + apply plugin: 'fabric-loom' + apply plugin: 'maven-publish' + + archivesBaseName = project.name + group = "dev.draylar.${project.group}" + + // Only publish for submodules (not the root project) - add standard jar, + sources & development jar + publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + version = "${project.mod_version}+${project.minecraft_version}" + from components.java + } + } + + repositories { + // Add repositories to publish to here. + // Notice: This block does NOT have the same function as the block in the top level. + // The repositories here will be used for publishing your artifact, not for + // retrieving dependencies. + maven { + name = "Gitea" + url = uri("https://git.bigduckie.dev/api/packages/big-duckie/maven") + + credentials(HttpHeaderCredentials) { + name = "Authorization" + value = "token ${System.getenv("MAVEN_TOKEN")}" + } + + authentication { + header(HttpHeaderAuthentication) + } + } + } + } + + // Add sources & javadoc artifacts + java { + withSourcesJar() + withJavadocJar() + } +} + // Main project depends on the base & gui module for testing dependencies { implementation project(path: ":omega-config-base", configuration: "namedElements") diff --git a/gradle.properties b/gradle.properties index 5bed807..4af409b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,17 +1,19 @@ # Done to increase the memory available to gradle. -org.gradle.jvmargs=-Xmx2G +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true # Fabric Properties # check these on https://fabricmc.net/versions.html minecraft_version=1.20.1 yarn_mappings=1.20.1+build.10 -loader_version=0.15.11 - -# Fabric API -fabric_version=0.92.2+1.20.1 +loader_version=0.16.7 # Mod Properties mod_version=1.4.1 -maven_group=dev.draylar +maven_group=dev.bigduckie archives_base_name=omega-config + +# Dependencies +fabric_version=0.92.2+1.20.1 + modmenu_version=7.1.0 \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 0d18421..df97d72 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip +networkTimeout=10000 +validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/jitpack.yml b/jitpack.yml deleted file mode 100644 index f29a667..0000000 --- a/jitpack.yml +++ /dev/null @@ -1,5 +0,0 @@ -jdk: - - openjdk17 -before_install: - - sdk install java 17.0.1-open - - sdk use java 17.0.1-open \ No newline at end of file diff --git a/omega-config-base/src/main/java/draylar/omegaconfig/OmegaConfig.java b/omega-config-base/src/main/java/draylar/omegaconfig/OmegaConfig.java index ea7fa8b..14d4429 100644 --- a/omega-config-base/src/main/java/draylar/omegaconfig/OmegaConfig.java +++ b/omega-config-base/src/main/java/draylar/omegaconfig/OmegaConfig.java @@ -96,8 +96,9 @@ public class OmegaConfig implements ModInitializer { } return config; - } catch (NoSuchMethodException | InstantiationException | IllegalAccessException | InvocationTargetException exception) { - exception.printStackTrace(); + } catch (NoSuchMethodException | InstantiationException | IllegalAccessException | + InvocationTargetException e) { + e.printStackTrace(); throw new RuntimeException("No valid constructor found for: " + configClass.getName()); } } @@ -179,10 +180,8 @@ public class OmegaConfig implements ModInitializer { Class[] classes = aClass.getDeclaredClasses(); - if (classes.length != 0) { - for (Class clazz : classes) { - populateRecursively(list, clazz); - } + for (Class clazz : classes) { + populateRecursively(list, clazz); } } diff --git a/omega-config-base/src/main/java/draylar/omegaconfig/mixin/ClientMixin.java b/omega-config-base/src/main/java/draylar/omegaconfig/mixin/ClientMixin.java index 7ec6f13..3ecbb2b 100644 --- a/omega-config-base/src/main/java/draylar/omegaconfig/mixin/ClientMixin.java +++ b/omega-config-base/src/main/java/draylar/omegaconfig/mixin/ClientMixin.java @@ -8,6 +8,7 @@ import net.fabricmc.fabric.api.util.NbtType; import net.minecraft.client.MinecraftClient; import net.minecraft.client.RunArgs; import net.minecraft.nbt.NbtCompound; +import net.minecraft.nbt.NbtElement; import net.minecraft.nbt.NbtList; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Unique; @@ -36,7 +37,7 @@ public class ClientMixin { client.execute(() -> { if (tag != null && tag.contains("Configurations")) { - NbtList list = tag.getList("Configurations", NbtType.COMPOUND); + NbtList list = tag.getList("Configurations", NbtElement.COMPOUND_TYPE); list.forEach(compound -> { NbtCompound syncedConfiguration = (NbtCompound) compound; String name = syncedConfiguration.getString("ConfigName"); diff --git a/omega-config-base/src/main/resources/fabric.mod.json b/omega-config-base/src/main/resources/fabric.mod.json index 8878483..270aa9c 100644 --- a/omega-config-base/src/main/resources/fabric.mod.json +++ b/omega-config-base/src/main/resources/fabric.mod.json @@ -6,7 +6,8 @@ "description": "The last config solution you will ever use.", "authors": [ "Draylar", - "Frqnny" + "Frqnny", + "Big Duckie" ], "entrypoints": { "main": [ @@ -14,10 +15,10 @@ ] }, "contact": { - "homepage": "https://github.com/Draylar/omega-config", - "sources": "https://github.com/Draylar/omega-config", - "issues": "https://github.com/Draylar/omega-config/issues" - }, + "homepage": "https://github.com/Draylar/omega-config", + "sources": "https://github.com/Draylar/omega-config", + "issues": "https://github.com/Draylar/omega-config/issues" + }, "license": "MIT", "environment": "*", "mixins": [ @@ -28,9 +29,11 @@ "fabric": "*", "minecraft": "*" }, - "custom": { - "modmenu": { - "badges": [ "library" ] - } + "custom": { + "modmenu": { + "badges": [ + "library" + ] } + } } diff --git a/settings.gradle b/settings.gradle index 5cb940f..694f6b6 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,10 +1,10 @@ pluginManagement { repositories { - jcenter() maven { name = 'Fabric' url = 'https://maven.fabricmc.net/' } + mavenCentral() gradlePluginPortal() } } diff --git a/src/testmod/java/draylar/omegatest/config/StructuresConfigTest.java b/src/testmod/java/draylar/omegatest/config/StructuresConfigTest.java index 97e87cb..6308283 100644 --- a/src/testmod/java/draylar/omegatest/config/StructuresConfigTest.java +++ b/src/testmod/java/draylar/omegatest/config/StructuresConfigTest.java @@ -8,7 +8,7 @@ import java.util.HashMap; import java.util.Map; -//taken straight out of Mo' Structures +//taken straight out of Mo Structures public class StructuresConfigTest implements Config { @Comment("""