diff --git a/src/main/java/net/fabricmc/loom/task/GenerateSourcesTask.java b/src/main/java/net/fabricmc/loom/task/GenerateSourcesTask.java index f0f087bd..cf12eeea 100644 --- a/src/main/java/net/fabricmc/loom/task/GenerateSourcesTask.java +++ b/src/main/java/net/fabricmc/loom/task/GenerateSourcesTask.java @@ -63,11 +63,11 @@ import org.gradle.api.tasks.Nested; import org.gradle.api.tasks.Optional; import org.gradle.api.tasks.OutputFile; import org.gradle.api.tasks.TaskAction; +import org.gradle.api.tasks.UntrackedTask; import org.gradle.api.tasks.options.Option; import org.gradle.internal.logging.progress.ProgressLoggerFactory; import org.gradle.process.ExecOperations; import org.gradle.process.ExecResult; -import org.gradle.work.DisableCachingByDefault; import org.gradle.workers.WorkAction; import org.gradle.workers.WorkParameters; import org.gradle.workers.WorkQueue; @@ -104,7 +104,7 @@ import net.fabricmc.loom.util.ipc.IPCServer; import net.fabricmc.loom.util.service.ScopedServiceFactory; import net.fabricmc.mappingio.tree.MemoryMappingTree; -@DisableCachingByDefault +@UntrackedTask(because = "Manually invoked, has internal caching") public abstract class GenerateSourcesTask extends AbstractLoomTask { private static final String CACHE_VERSION = "v1"; private final DecompilerOptions decompilerOptions; @@ -237,7 +237,6 @@ public abstract class GenerateSourcesTask extends AbstractLoomTask { throw new IllegalStateException("Input minecraft jar not found: " + getInputJarName().get()); })); - getOutputs().upToDateWhen((o) -> false); getClasspath().from(decompilerOptions.getClasspath()).finalizeValueOnRead(); dependsOn(decompilerOptions.getClasspath().getBuiltBy()); diff --git a/src/main/java/net/fabricmc/loom/task/LoomTasks.java b/src/main/java/net/fabricmc/loom/task/LoomTasks.java index 27ddf591..97d4df71 100644 --- a/src/main/java/net/fabricmc/loom/task/LoomTasks.java +++ b/src/main/java/net/fabricmc/loom/task/LoomTasks.java @@ -54,7 +54,6 @@ public abstract class LoomTasks implements Runnable { public void run() { getTasks().register("migrateMappings", MigrateMappingsTask.class, t -> { t.setDescription("Migrates mappings to a new version."); - t.getOutputs().upToDateWhen(o -> false); }); var generateLog4jConfig = getTasks().register("generateLog4jConfig", GenerateLog4jConfigTask.class, t -> { diff --git a/src/main/java/net/fabricmc/loom/task/MigrateMappingsTask.java b/src/main/java/net/fabricmc/loom/task/MigrateMappingsTask.java index 123a5404..0024570d 100644 --- a/src/main/java/net/fabricmc/loom/task/MigrateMappingsTask.java +++ b/src/main/java/net/fabricmc/loom/task/MigrateMappingsTask.java @@ -31,13 +31,13 @@ import org.gradle.api.tasks.InputDirectory; import org.gradle.api.tasks.Nested; import org.gradle.api.tasks.OutputDirectory; import org.gradle.api.tasks.TaskAction; +import org.gradle.api.tasks.UntrackedTask; import org.gradle.api.tasks.options.Option; -import org.gradle.work.DisableCachingByDefault; import net.fabricmc.loom.task.service.MigrateMappingsService; import net.fabricmc.loom.util.service.ScopedServiceFactory; -@DisableCachingByDefault(because = "Always rerun this task.") +@UntrackedTask(because = "Always rerun this task.") public abstract class MigrateMappingsTask extends AbstractLoomTask { @Input @Option(option = "mappings", description = "Target mappings") diff --git a/src/main/java/net/fabricmc/loom/task/prod/AbstractProductionRunTask.java b/src/main/java/net/fabricmc/loom/task/prod/AbstractProductionRunTask.java index 15c45439..0661f969 100644 --- a/src/main/java/net/fabricmc/loom/task/prod/AbstractProductionRunTask.java +++ b/src/main/java/net/fabricmc/loom/task/prod/AbstractProductionRunTask.java @@ -46,6 +46,7 @@ import org.gradle.api.tasks.Internal; import org.gradle.api.tasks.Nested; import org.gradle.api.tasks.OutputDirectory; import org.gradle.api.tasks.TaskAction; +import org.gradle.api.tasks.UntrackedTask; import org.gradle.jvm.toolchain.JavaLauncher; import org.gradle.jvm.toolchain.JavaToolchainService; import org.gradle.jvm.toolchain.JavaToolchainSpec; @@ -68,6 +69,7 @@ import net.fabricmc.loom.util.gradle.GradleUtils; *

Do not use this task directly, use {@link ClientProductionRunTask} or {@link ServerProductionRunTask} instead. */ @ApiStatus.Experimental +@UntrackedTask(because = "Always rerun this task.") public abstract sealed class AbstractProductionRunTask extends AbstractLoomTask permits ClientProductionRunTask, ServerProductionRunTask { private static final Logger LOGGER = LoggerFactory.getLogger(AbstractProductionRunTask.class);