From 24150283e6063c1d0fa4e50a3804b1c5186ff758 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Mon, 22 Aug 2022 20:43:21 +0100 Subject: [PATCH] Move configuration lock file out of the project dir. Hopefully fixes #703 --- .../fabricmc/loom/configuration/CompileConfiguration.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java b/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java index 6d8cade7..71275a18 100644 --- a/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java +++ b/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java @@ -58,6 +58,7 @@ import net.fabricmc.loom.configuration.providers.minecraft.MinecraftSourceSets; import net.fabricmc.loom.configuration.providers.minecraft.mapped.IntermediaryMinecraftProvider; import net.fabricmc.loom.configuration.providers.minecraft.mapped.NamedMinecraftProvider; import net.fabricmc.loom.extension.MixinExtension; +import net.fabricmc.loom.util.Checksum; import net.fabricmc.loom.util.Constants; import net.fabricmc.loom.util.ExceptionUtil; import net.fabricmc.loom.util.gradle.GradleUtils; @@ -285,8 +286,9 @@ public final class CompileConfiguration { private static Path getLockFile(Project project) { final LoomGradleExtension extension = LoomGradleExtension.get(project); - final Path cacheDirectory = extension.getFiles().getProjectPersistentCache().toPath(); - return cacheDirectory.resolve("configuration.lock"); + final Path cacheDirectory = extension.getFiles().getUserCache().toPath(); + final String pathHash = Checksum.toHex(project.getProjectDir().getAbsolutePath().getBytes(StandardCharsets.UTF_8)).substring(0, 16); + return cacheDirectory.resolve( "." + pathHash + ".lock"); } private static boolean getAndLock(Project project) {