diff options
-rw-r--r-- | .github/workflows/build.yml | 6 | ||||
-rw-r--r-- | GuiTest/build.gradle | 7 | ||||
-rw-r--r-- | build.gradle | 50 | ||||
-rw-r--r-- | gradle.properties | 14 | ||||
-rw-r--r-- | javadoc/build.gradle | 3 | ||||
-rw-r--r-- | src/main/java/io/github/cottonmc/cotton/gui/client/ScreenDrawing.java | 2 | ||||
-rw-r--r-- | src/main/java/io/github/cottonmc/cotton/gui/widget/WTabPanel.java | 14 | ||||
-rw-r--r-- | src/main/java/io/github/cottonmc/cotton/gui/widget/WTextField.java | 2 | ||||
-rw-r--r-- | src/main/resources/fabric.mod.json | 10 |
9 files changed, 45 insertions, 63 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1a71a15..52f5c55 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,11 +9,11 @@ jobs: uses: actions/checkout@v2 - name: validate gradle wrapper uses: gradle/wrapper-validation-action@v1 - - name: setup jdk 16 + - name: setup jdk 17 uses: actions/setup-java@v2 with: - distribution: adopt - java-version: 16 + distribution: temurin + java-version: 17 - name: make gradle wrapper executable if: ${{ runner.os != 'Windows' }} run: chmod +x ./gradlew diff --git a/GuiTest/build.gradle b/GuiTest/build.gradle index ee1fa3b..17d3faa 100644 --- a/GuiTest/build.gradle +++ b/GuiTest/build.gradle @@ -2,9 +2,6 @@ plugins { id 'fabric-loom' } -sourceCompatibility = JavaVersion.VERSION_16 -targetCompatibility = JavaVersion.VERSION_16 - if(rootProject.file('private.gradle').exists()) { //Publishing details apply from: rootProject.file('private.gradle') } @@ -36,7 +33,9 @@ dependencies { compileOnly ("com.google.code.findbugs:jsr305:3.0.2") { transitive = false } - implementation project(':') + implementation project(path: ':', configuration: 'namedElements') + // TODO: Fix this in Loom (namedElements should expose remapped mod* dependencies) + modImplementation "io.github.cottonmc:Jankson-Fabric:${rootProject.jankson_version}" } processResources { diff --git a/build.gradle b/build.gradle index 54e7628..fc4276a 100644 --- a/build.gradle +++ b/build.gradle @@ -1,13 +1,10 @@ plugins { - id 'fabric-loom' version '0.9-SNAPSHOT' - id 'io.github.juuxel.loom-quiltflower' version '1.3.0' + id 'fabric-loom' version '0.10-SNAPSHOT' + id 'io.github.juuxel.loom-quiltflower-mini' version '1.0.0' id 'maven-publish' id 'checkstyle' } -sourceCompatibility = JavaVersion.VERSION_16 -targetCompatibility = JavaVersion.VERSION_16 - if(rootProject.file('private.gradle').exists()) { //Publishing details apply from: 'private.gradle' } @@ -22,15 +19,8 @@ configurations { repositories { maven { url "https://server.bbkr.space/artifactory/libs-release" } - /*maven { - url = "https://maven.terraformersmc.com/releases" - content { - includeGroup "com.terraformersmc" - } - }*/ maven { - name = "TerraformersMC archive" - url = "https://raw.githubusercontent.com/TerraformersMC/Archive/main/releases/" + url = "https://maven.terraformersmc.com/releases" content { includeGroup "com.terraformersmc" } @@ -48,7 +38,7 @@ dependencies { // Using modApi instead of api because of https://github.com/FabricMC/fabric-loom/issues/200 include modApi("io.github.juuxel:libninepatch:${project.libninepatch_version}") - modRuntime(modCompileOnly("com.terraformersmc:modmenu:$project.modmenu_version") { + modLocalRuntime(modCompileOnly("com.terraformersmc:modmenu:$project.modmenu_version") { exclude group: 'net.fabricmc.fabric-api' }) @@ -68,12 +58,28 @@ java { withJavadocJar() } +allprojects { + plugins.withId('java') { // when the java plugin is applied in the project + java { + // Use Java 17 toolchain if running on older version of Java, but allow newer versions + if (!JavaVersion.current().isCompatibleWith(JavaVersion.VERSION_17)) { + toolchain { + languageVersion = JavaLanguageVersion.of(17) + } + } else { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } + } + } +} + tasks.withType(JavaCompile) { // ensure that the encoding is set to UTF-8, no matter what the system default is // this fixes some edge cases with special characters not displaying correctly // see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html options.encoding = "UTF-8" - options.release.set 16 + options.release.set 17 } jar { @@ -91,8 +97,8 @@ javadoc { dependsOn project(':javadoc').tasks.jar options { - links "https://maven.fabricmc.net/docs/yarn-$project.yarn_mappings", - 'https://javadoc.io/doc/org.jetbrains/annotations/19.0.0' + // TODO: check again in 1.18 proper; links "https://maven.fabricmc.net/docs/yarn-$project.yarn_mappings" + links 'https://javadoc.io/doc/org.jetbrains/annotations/19.0.0' taglets 'io.github.cottonmc.cotton.gui.jd.ExperimentalTaglet', 'io.github.cottonmc.cotton.gui.jd.PropertyTaglet' tagletPath project(':javadoc').tasks.jar.outputs.files.singleFile @@ -105,15 +111,7 @@ javadoc { publishing { publications { maven(MavenPublication) { - artifact(remapJar) { - builtBy remapJar - } - - artifact(sourcesJar) { - builtBy remapSourcesJar - } - - artifact(javadocJar) + from components.java } } diff --git a/gradle.properties b/gradle.properties index 55dafaf..15c1e73 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,17 +3,17 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties # check these on https://fabricmc.net/use - minecraft_version=1.17.1 - yarn_mappings=1.17.1+build.59 - loader_version=0.11.6 + minecraft_version=1.18-rc1 + yarn_mappings=1.18-rc1+build.1 + loader_version=0.12.5 # Mod Properties - mod_version = 4.2.2 + mod_version = 5.0.0-beta.2 maven_group = io.github.cottonmc archives_base_name = LibGui # Dependencies - fabric_version=0.40.1+1.17 - jankson_version=3.0.1+j1.2.0 - modmenu_version=2.0.2 + fabric_version=0.43.1+1.18 + jankson_version=4.0.0+j1.2.0 + modmenu_version=3.0.0 libninepatch_version=1.1.0 diff --git a/javadoc/build.gradle b/javadoc/build.gradle index e8300bb..bde068f 100644 --- a/javadoc/build.gradle +++ b/javadoc/build.gradle @@ -1,6 +1,3 @@ plugins { id 'java' } - -sourceCompatibility = rootProject.sourceCompatibility -targetCompatibility = rootProject.targetCompatibility diff --git a/src/main/java/io/github/cottonmc/cotton/gui/client/ScreenDrawing.java b/src/main/java/io/github/cottonmc/cotton/gui/client/ScreenDrawing.java index 99a6d00..33d8b43 100644 --- a/src/main/java/io/github/cottonmc/cotton/gui/client/ScreenDrawing.java +++ b/src/main/java/io/github/cottonmc/cotton/gui/client/ScreenDrawing.java @@ -136,7 +136,7 @@ public class ScreenDrawing { float b = (color & 255) / 255.0F; Tessellator tessellator = Tessellator.getInstance(); BufferBuilder buffer = tessellator.getBuffer(); - Matrix4f model = matrices.peek().getModel(); + Matrix4f model = matrices.peek().getPositionMatrix(); RenderSystem.enableBlend(); RenderSystem.setShaderTexture(0, texture); RenderSystem.setShaderColor(r, g, b, opacity); diff --git a/src/main/java/io/github/cottonmc/cotton/gui/widget/WTabPanel.java b/src/main/java/io/github/cottonmc/cotton/gui/widget/WTabPanel.java index 718e44b..9c16c73 100644 --- a/src/main/java/io/github/cottonmc/cotton/gui/widget/WTabPanel.java +++ b/src/main/java/io/github/cottonmc/cotton/gui/widget/WTabPanel.java @@ -116,19 +116,7 @@ public class WTabPanel extends WPanel { @Nullable private final Consumer<TooltipBuilder> tooltip; - /** - * Constructs a tab. - * - * @param title the tab title - * @param icon the tab icon - * @param widget the widget contained in the tab - * @param tooltip the tab tooltip - * @throws IllegalArgumentException if both the title and the icon are null - * @throws NullPointerException if the widget is null - * @deprecated Use {@link Builder} instead. - */ - @Deprecated - public Tab(@Nullable Text title, @Nullable Icon icon, WWidget widget, @Nullable Consumer<TooltipBuilder> tooltip) { + private Tab(@Nullable Text title, @Nullable Icon icon, WWidget widget, @Nullable Consumer<TooltipBuilder> tooltip) { if (title == null && icon == null) { throw new IllegalArgumentException("A tab must have a title or an icon"); } diff --git a/src/main/java/io/github/cottonmc/cotton/gui/widget/WTextField.java b/src/main/java/io/github/cottonmc/cotton/gui/widget/WTextField.java index 200161c..5d2fc9f 100644 --- a/src/main/java/io/github/cottonmc/cotton/gui/widget/WTextField.java +++ b/src/main/java/io/github/cottonmc/cotton/gui/widget/WTextField.java @@ -240,7 +240,7 @@ public class WTextField extends WWidget { private void invertedRect(MatrixStack matrices, int x, int y, int width, int height) { Tessellator tessellator = Tessellator.getInstance(); BufferBuilder buffer = tessellator.getBuffer(); - Matrix4f model = matrices.peek().getModel(); + Matrix4f model = matrices.peek().getPositionMatrix(); RenderSystem.setShaderColor(0.0F, 0.0F, 1.0F, 1.0F); RenderSystem.setShader(GameRenderer::getPositionTexShader); RenderSystem.disableTexture(); diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 87ab98b..abca72c 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -23,11 +23,11 @@ "modmenu": ["io.github.cottonmc.cotton.gui.impl.modmenu.ModMenuSupport"] }, "depends": { - "fabricloader": ">=0.11.0", - "fabric": "*", - "minecraft": ">=1.17.1", - "jankson": "^3.0.0", - "fabric-networking-api-v1": "^1.0.0", + "java": ">=17", + "fabricloader": ">=0.12.5", + "fabric": ">=0.42.4", + "minecraft": "~1.18-beta.2", + "jankson": "^4.0.0", "libninepatch": "^1.1.0" }, "suggests": { |