From 58e94f2db315f029764265c0a22779299dd9e463 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Tue, 19 Jan 2021 21:58:39 +0000 Subject: Centralise refreshDeps variable. Makes it easier to hack it to always enable for profiling. --- src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java | 7 +++---- .../java/net/fabricmc/loom/configuration/DependencyProvider.java | 3 ++- .../net/fabricmc/loom/configuration/LoomDependencyManager.java | 2 +- .../configuration/providers/mappings/MojangMappingsDependency.java | 3 ++- 4 files changed, 8 insertions(+), 7 deletions(-) (limited to 'src/main/java/net/fabricmc') diff --git a/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java b/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java index c257a69d..5def3784 100644 --- a/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java +++ b/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java @@ -45,6 +45,7 @@ import org.gradle.jvm.JvmLibrary; import org.gradle.language.base.artifact.SourcesArtifact; import net.fabricmc.loom.LoomGradleExtension; +import net.fabricmc.loom.LoomGradlePlugin; import net.fabricmc.loom.configuration.RemappedConfigurationEntry; import net.fabricmc.loom.configuration.mods.ModProcessor; import net.fabricmc.loom.configuration.processors.dependency.ModDependencyInfo; @@ -57,7 +58,7 @@ public class ModCompileRemapper { public static void remapDependencies(Project project, String mappingsSuffix, LoomGradleExtension extension, SourceRemapper sourceRemapper) { Logger logger = project.getLogger(); DependencyHandler dependencies = project.getDependencies(); - boolean refreshDeps = project.getGradle().getStartParameter().isRefreshDependencies(); + boolean refreshDeps = LoomGradlePlugin.refreshDeps; final File modStore = extension.getRemappedModCache(); final RemapData remapData = new RemapData(mappingsSuffix, modStore); @@ -169,9 +170,7 @@ public class ModCompileRemapper { private static void scheduleSourcesRemapping(Project project, SourceRemapper sourceRemapper, File sources, String remappedLog, File remappedSources) { project.getLogger().debug(":providing " + remappedLog + " sources"); - boolean refreshDeps = project.getGradle().getStartParameter().isRefreshDependencies(); - - if (!remappedSources.exists() || sources.lastModified() <= 0 || sources.lastModified() > remappedSources.lastModified() || refreshDeps) { + if (!remappedSources.exists() || sources.lastModified() <= 0 || sources.lastModified() > remappedSources.lastModified() || LoomGradlePlugin.refreshDeps) { sourceRemapper.scheduleRemapSources(sources, remappedSources, false, true); // Depenedency sources are used in ide only so don't need to be reproducable } else { project.getLogger().info(remappedSources.getName() + " is up to date with " + sources.getName()); diff --git a/src/main/java/net/fabricmc/loom/configuration/DependencyProvider.java b/src/main/java/net/fabricmc/loom/configuration/DependencyProvider.java index cc1c6d49..63ef8354 100644 --- a/src/main/java/net/fabricmc/loom/configuration/DependencyProvider.java +++ b/src/main/java/net/fabricmc/loom/configuration/DependencyProvider.java @@ -48,6 +48,7 @@ import org.gradle.api.artifacts.SelfResolvingDependency; import org.zeroturnaround.zip.ZipUtil; import net.fabricmc.loom.LoomGradleExtension; +import net.fabricmc.loom.LoomGradlePlugin; public abstract class DependencyProvider { private LoomDependencyManager dependencyManager; @@ -88,7 +89,7 @@ public abstract class DependencyProvider { } public boolean isRefreshDeps() { - return getProject().getGradle().getStartParameter().isRefreshDependencies(); + return LoomGradlePlugin.refreshDeps; } public static class DependencyInfo { diff --git a/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java b/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java index 5397794e..397908c5 100644 --- a/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java +++ b/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java @@ -130,7 +130,7 @@ public class LoomDependencyManager { try { provider.provide(info, afterTasks::add); } catch (Exception e) { - throw new RuntimeException("Failed to provide " + dependency.getGroup() + ":" + dependency.getName() + ":" + dependency.getVersion() + " : " + e.getMessage(), e); + throw new RuntimeException("Failed to provide " + dependency.getGroup() + ":" + dependency.getName() + ":" + dependency.getVersion() + " : " + e.toString(), e); } } } diff --git a/src/main/java/net/fabricmc/loom/configuration/providers/mappings/MojangMappingsDependency.java b/src/main/java/net/fabricmc/loom/configuration/providers/mappings/MojangMappingsDependency.java index b86e04f2..22664957 100644 --- a/src/main/java/net/fabricmc/loom/configuration/providers/mappings/MojangMappingsDependency.java +++ b/src/main/java/net/fabricmc/loom/configuration/providers/mappings/MojangMappingsDependency.java @@ -54,6 +54,7 @@ import org.zeroturnaround.zip.ZipEntrySource; import org.zeroturnaround.zip.ZipUtil; import net.fabricmc.loom.LoomGradleExtension; +import net.fabricmc.loom.LoomGradlePlugin; import net.fabricmc.loom.configuration.providers.minecraft.MinecraftVersionInfo; import net.fabricmc.loom.util.DownloadUtil; import net.fabricmc.lorenztiny.TinyMappingsReader; @@ -81,7 +82,7 @@ public class MojangMappingsDependency implements SelfResolvingDependency { Path clientMappings = mappingsDir.resolve(String.format("%s.%s-%s-client.map", GROUP, MODULE, getVersion())); Path serverMappings = mappingsDir.resolve(String.format("%s.%s-%s-server.map", GROUP, MODULE, getVersion())); - if (!Files.exists(mappingsFile) || project.getGradle().getStartParameter().isRefreshDependencies()) { + if (!Files.exists(mappingsFile) || LoomGradlePlugin.refreshDeps) { MappingSet mappingSet; try { -- cgit From b622544cbe71542e2d2f630ef396c4e852c617f0 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Tue, 19 Jan 2021 22:15:23 +0000 Subject: Dont remap dependency sources when building on CI services. Use `-Dfabric.loom.ci=false` to force disable --- src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java | 3 ++- src/main/java/net/fabricmc/loom/util/OperatingSystem.java | 11 +++++++++++ src/main/java/net/fabricmc/loom/util/SourceRemapper.java | 6 ++++-- 3 files changed, 17 insertions(+), 3 deletions(-) (limited to 'src/main/java/net/fabricmc') diff --git a/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java b/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java index 5def3784..1abd8662 100644 --- a/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java +++ b/src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java @@ -51,6 +51,7 @@ import net.fabricmc.loom.configuration.mods.ModProcessor; import net.fabricmc.loom.configuration.processors.dependency.ModDependencyInfo; import net.fabricmc.loom.configuration.processors.dependency.RemapData; import net.fabricmc.loom.util.Constants; +import net.fabricmc.loom.util.OperatingSystem; import net.fabricmc.loom.util.SourceRemapper; @SuppressWarnings("UnstableApiUsage") @@ -96,7 +97,7 @@ public class ModCompileRemapper { File remappedSources = info.getRemappedOutput("sources"); - if (!remappedSources.exists() || refreshDeps) { + if ((!remappedSources.exists() || refreshDeps) && !OperatingSystem.isCIBuild()) { File sources = findSources(dependencies, artifact); if (sources != null) { diff --git a/src/main/java/net/fabricmc/loom/util/OperatingSystem.java b/src/main/java/net/fabricmc/loom/util/OperatingSystem.java index 727948fe..2f69bcb8 100644 --- a/src/main/java/net/fabricmc/loom/util/OperatingSystem.java +++ b/src/main/java/net/fabricmc/loom/util/OperatingSystem.java @@ -48,4 +48,15 @@ public class OperatingSystem { public static boolean is64Bit() { return System.getProperty("sun.arch.data.model").contains("64"); } + + public static boolean isCIBuild() { + String loomProperty = System.getProperty("fabric.loom.ci"); + + if (loomProperty != null) { + return loomProperty.equalsIgnoreCase("true"); + } + + // CI seems to be set by most popular CI services + return System.getenv("CI") != null; + } } diff --git a/src/main/java/net/fabricmc/loom/util/SourceRemapper.java b/src/main/java/net/fabricmc/loom/util/SourceRemapper.java index 8cf87ff9..b8a0a3f8 100644 --- a/src/main/java/net/fabricmc/loom/util/SourceRemapper.java +++ b/src/main/java/net/fabricmc/loom/util/SourceRemapper.java @@ -91,10 +91,12 @@ public class SourceRemapper { } public void remapAll() { - if (!remapTasks.isEmpty()) { - project.getLogger().lifecycle(":remapping sources"); + if (remapTasks.isEmpty()) { + return; } + project.getLogger().lifecycle(":remapping sources"); + ProgressLogger progressLogger = ProgressLogger.getProgressFactory(project, SourceRemapper.class.getName()); progressLogger.start("Remapping dependency sources", "sources"); -- cgit