From da34ea4bf0dd940322aedabbba79ba44f33ccce3 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Sun, 26 Jun 2022 14:04:53 +0100 Subject: [PATCH] Only run the idea sync task when one or more run configs is generated for the project. Speeds up a fabric API sync by a reasonable amount. --- .../loom/configuration/ide/idea/IdeaConfiguration.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/fabricmc/loom/configuration/ide/idea/IdeaConfiguration.java b/src/main/java/net/fabricmc/loom/configuration/ide/idea/IdeaConfiguration.java index 38ab079b..71029e8f 100644 --- a/src/main/java/net/fabricmc/loom/configuration/ide/idea/IdeaConfiguration.java +++ b/src/main/java/net/fabricmc/loom/configuration/ide/idea/IdeaConfiguration.java @@ -33,12 +33,18 @@ import org.gradle.api.Project; import org.gradle.api.tasks.TaskProvider; import org.gradle.internal.DefaultTaskExecutionRequest; +import net.fabricmc.loom.LoomGradleExtension; +import net.fabricmc.loom.configuration.ide.RunConfigSettings; import net.fabricmc.loom.task.LoomTasks; public class IdeaConfiguration { public static void setup(Project project) { TaskProvider ideaSyncTask = project.getTasks().register("ideaSyncTask", IdeaSyncTask.class, task -> { - task.dependsOn(LoomTasks.getIDELaunchConfigureTaskName(project)); + if (LoomGradleExtension.get(project).getRunConfigs().stream().anyMatch(RunConfigSettings::isIdeConfigGenerated)) { + task.dependsOn(LoomTasks.getIDELaunchConfigureTaskName(project)); + } else { + task.setEnabled(false); + } }); if (!IdeaUtils.isIdeaSync()) {