Skip to content

Commit

Permalink
Merge branch 'exp/1.6' into feature/check-java-version
Browse files Browse the repository at this point in the history
  • Loading branch information
modmuss50 authored Mar 10, 2024
2 parents 77e0ce9 + b44e4ec commit 1fe5499
Show file tree
Hide file tree
Showing 56 changed files with 1,606 additions and 679 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
options: --user root
steps:
- uses: actions/checkout@v4
- uses: gradle/wrapper-validation-action@v1
- uses: gradle/wrapper-validation-action@v2

# Generate the build number based on tags to allow per branch build numbers, not something github provides by default.
- name: Generate build number
Expand Down
24 changes: 12 additions & 12 deletions .github/workflows/test-push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ jobs:
strategy:
fail-fast: false
matrix:
version: [8.3.0-jdk17]
version: [8.6.0-jdk17]
runs-on: ubuntu-22.04
container:
image: gradle:${{ matrix.version }}
options: --user root
steps:
- uses: actions/checkout@v4
- uses: gradle/wrapper-validation-action@v1
- uses: gradle/wrapper-validation-action@v2
- run: gradle build check -x test --stacktrace --warning-mode fail

build_windows:
Expand All @@ -29,7 +29,7 @@ jobs:
with:
java-version: 17
distribution: 'temurin'
- uses: gradle/wrapper-validation-action@v1
- uses: gradle/wrapper-validation-action@v2
- run: ./gradlew build check -x test --stacktrace --warning-mode fail

# This job is used to feed the test matrix of next job to allow the tests to run in parallel
Expand All @@ -39,7 +39,7 @@ jobs:

runs-on: ubuntu-22.04
container:
image: gradle:8.3.0-jdk17
image: gradle:8.6.0-jdk17
options: --user root

steps:
Expand All @@ -58,7 +58,7 @@ jobs:
strategy:
fail-fast: false
matrix:
version: [8.3.0-jdk17]
version: [8.6.0-jdk17]
test: ${{ fromJson(needs.prepare_test_matrix.outputs.matrix) }}

runs-on: ubuntu-22.04
Expand All @@ -73,12 +73,12 @@ jobs:
TEST_WARNING_MODE: fail
id: test

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: ${{ steps.test.outputs.test }} Results
path: build/reports/
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: ${{ steps.test.outputs.test }} Heap Dump
Expand Down Expand Up @@ -107,12 +107,12 @@ jobs:
TEST_WARNING_MODE: fail
id: test

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: ${{ steps.test.outputs.test }} (${{ matrix.java }}) Results (Windows)
path: build/reports/
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: ${{ steps.test.outputs.test }} Heap Dump (Windows)
Expand All @@ -125,8 +125,8 @@ jobs:
strategy:
fail-fast: false
matrix:
java: [ 17, 20 ]
os: [ windows-2022, ubuntu-22.04, macos-12 ]
java: [ 17, 21 ]
os: [ windows-2022, ubuntu-22.04, macos-14 ]

runs-on: ${{ matrix.os }}
steps:
Expand All @@ -138,7 +138,7 @@ jobs:

- run: ./gradlew test --tests *ReproducibleBuildTest --stacktrace --warning-mode fail

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: Reproducible Build ${{ matrix.os }} (${{ matrix.java }}) Results
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
*/
@SuppressWarnings("unused")
public class LoomGradlePluginBootstrap implements Plugin<PluginAware> {
private static final String MIN_SUPPORTED_GRADLE_VERSION = "8.3";
private static final String MIN_SUPPORTED_GRADLE_VERSION = "8.6";
private static final int MIN_SUPPORTED_MAJOR_JAVA_VERSION = 17;
private static final int MIN_SUPPORTED_MAJOR_IDEA_VERSION = 2021;

Expand Down
14 changes: 13 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
}

group = 'net.fabricmc'
def baseVersion = '1.5'
def baseVersion = '1.6'

def ENV = System.getenv()
if (ENV.BUILD_NUMBER) {
Expand Down Expand Up @@ -245,6 +245,13 @@ checkstyle {
toolVersion = libs.versions.checkstyle.get()
}

// Workaround https://github.com/gradle/gradle/issues/27035
configurations.checkstyle {
resolutionStrategy.capabilitiesResolution.withCapability("com.google.collections:google-collections") {
select("com.google.guava:guava:0")
}
}

codenarc {
toolVersion = libs.versions.codenarc.get()
configFile = file("codenarc.groovy")
Expand Down Expand Up @@ -370,6 +377,11 @@ task writeActionsTestMatrix() {
return
}

if (it.name.endsWith("DebugLineNumbersTest.groovy")) {
// Known flakey test
return
}

def className = it.name.replace(".groovy", "")
testMatrix.add("net.fabricmc.loom.test.integration.${className}")
}
Expand Down
12 changes: 6 additions & 6 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
[versions]
kotlin = "1.9.0"
kotlin = "1.9.20"
asm = "9.6"
commons-io = "2.15.1"
gson = "2.10.1"
guava = "33.0.0-jre"

stitch = "0.6.2"
tiny-remapper = "0.10.0"
tiny-remapper = "0.10.1"
access-widener = "2.1.0"
mapping-io = "0.5.1"
lorenz-tiny = "4.0.2"
mercury = "0.4.1"
kotlinx-metadata = "0.8.0"
kotlinx-metadata = "0.9.0"

# Plugins
spotless = "6.20.0"
spotless = "6.25.0"
test-retry = "1.5.6"
checkstyle = "10.12.5"
codenarc = "3.3.0"
checkstyle = "10.13.0"
codenarc = "3.4.0"
jacoco = "0.8.11"

[libraries]
Expand Down
2 changes: 1 addition & 1 deletion gradle/runtime.libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[versions]
# Decompilers
fernflower = "2.0.0"
cfr = "0.2.1"
cfr = "0.2.2"
vineflower = "1.9.3"

# Runtime depedencies
Expand Down
14 changes: 7 additions & 7 deletions gradle/test.libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
[versions]
spock = "2.3-groovy-3.0"
junit = "5.10.1"
javalin = "5.6.3"
mockito = "5.8.0"
java-debug = "0.50.0"
mixin = "0.11.4+mixin.0.8.5"
junit = "5.10.2"
javalin = "6.1.0"
mockito = "5.10.0"
java-debug = "0.51.0"
mixin = "0.12.5+mixin.0.8.5"

gradle-nightly = "8.7-20240104001326+0000"
fabric-loader = "0.15.3"
gradle-nightly = "8.8-20240224001421+0000"
fabric-loader = "0.15.6"
fabric-installer = "1.0.0"

[libraries]
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
7 changes: 7 additions & 0 deletions src/main/java/net/fabricmc/loom/LoomGradleExtension.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
package net.fabricmc.loom;

import java.nio.file.Path;
import java.util.Collection;
import java.util.List;

import org.gradle.api.Project;
Expand All @@ -38,12 +39,14 @@
import net.fabricmc.loom.configuration.InstallerData;
import net.fabricmc.loom.configuration.LoomDependencyManager;
import net.fabricmc.loom.configuration.accesswidener.AccessWidenerFile;
import net.fabricmc.loom.configuration.providers.mappings.LayeredMappingsFactory;
import net.fabricmc.loom.configuration.providers.mappings.MappingConfiguration;
import net.fabricmc.loom.configuration.providers.minecraft.MinecraftProvider;
import net.fabricmc.loom.configuration.providers.minecraft.library.LibraryProcessorManager;
import net.fabricmc.loom.configuration.providers.minecraft.mapped.IntermediaryMinecraftProvider;
import net.fabricmc.loom.configuration.providers.minecraft.mapped.NamedMinecraftProvider;
import net.fabricmc.loom.extension.LoomFiles;
import net.fabricmc.loom.extension.LoomProblemReporter;
import net.fabricmc.loom.extension.MixinExtension;
import net.fabricmc.loom.extension.RemapperExtensionHolder;
import net.fabricmc.loom.util.download.DownloadBuilder;
Expand Down Expand Up @@ -118,4 +121,8 @@ default List<Path> getMinecraftJars(MappingsNamespace mappingsNamespace) {
ListProperty<LibraryProcessorManager.LibraryProcessorFactory> getLibraryProcessors();

ListProperty<RemapperExtensionHolder> getRemapperExtensions();

Collection<LayeredMappingsFactory> getLayeredMappingFactories();

LoomProblemReporter getProblemReporter();
}
4 changes: 4 additions & 0 deletions src/main/java/net/fabricmc/loom/LoomRepositoryPlugin.java
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,10 @@ public static void setupForLegacyVersions(RepositoryHandler repositories) {
sources.artifact();
sources.ignoreGradleMetadataRedirection();
});

// Fallback to maven central for artifacts such as sources or javadocs that are not mirrored on Mojang's repo.
// See: https://github.com/FabricMC/fabric-loom/issues/1032
repo.artifactUrls(ArtifactRepositoryContainer.MAVEN_CENTRAL_URL);
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
import org.gradle.api.NamedDomainObjectList;
import org.gradle.api.artifacts.Dependency;
import org.gradle.api.file.ConfigurableFileCollection;
import org.gradle.api.file.FileCollection;
import org.gradle.api.file.RegularFileProperty;
import org.gradle.api.provider.ListProperty;
import org.gradle.api.provider.Property;
Expand Down Expand Up @@ -231,4 +232,9 @@ default void splitMinecraftJar() {
* @return The minecraft version, as a {@link Provider}.
*/
Provider<String> getMinecraftVersion();

/**
* @return A lazily evaluated {@link FileCollection} containing the named minecraft jars.
*/
FileCollection getNamedMinecraftJars();
}
Loading

0 comments on commit 1fe5499

Please sign in to comment.