mirror of
https://github.com/architectury/architectury-loom.git
synced 2026-04-03 05:57:42 -05:00
Respect reproducibleFileOrder and preserveFileTimestamps (#304)
* Respect reproducibleFileOrder and preserveFileTimestamps * Also Respect On Sources Jars * java 8 * checkstyle * Please Rerun Actions
This commit is contained in:
@@ -48,6 +48,7 @@ import net.fabricmc.loom.util.GradleSupport;
|
||||
import net.fabricmc.loom.util.MixinRefmapHelper;
|
||||
import net.fabricmc.loom.util.NestedJars;
|
||||
import net.fabricmc.loom.util.TinyRemapperMappingsHelper;
|
||||
import net.fabricmc.loom.util.ZipReprocessorUtil;
|
||||
import net.fabricmc.loom.util.accesswidener.AccessWidenerJarProcessor;
|
||||
import net.fabricmc.loom.util.JarRemapper;
|
||||
import net.fabricmc.stitch.util.Pair;
|
||||
@@ -151,16 +152,9 @@ public class RemapJarTask extends Jar {
|
||||
}
|
||||
}
|
||||
|
||||
/*try {
|
||||
if (modJar.exists()) {
|
||||
Files.move(modJar, modJarUnmappedCopy);
|
||||
extension.addUnmappedMod(modJarUnmappedCopy);
|
||||
}
|
||||
|
||||
Files.move(modJarOutput, modJar);
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}*/
|
||||
if (isReproducibleFileOrder() || isPreserveFileTimestamps()) {
|
||||
ZipReprocessorUtil.reprocessZip(output.toFile(), isReproducibleFileOrder(), isPreserveFileTimestamps());
|
||||
}
|
||||
}
|
||||
|
||||
public void scheduleRemap() throws Throwable {
|
||||
|
||||
@@ -26,6 +26,8 @@ package net.fabricmc.loom.task;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import org.gradle.api.model.ObjectFactory;
|
||||
import org.gradle.api.provider.Property;
|
||||
import org.gradle.api.tasks.Input;
|
||||
import org.gradle.api.tasks.InputFile;
|
||||
import org.gradle.api.tasks.Internal;
|
||||
@@ -33,19 +35,29 @@ import org.gradle.api.tasks.OutputFile;
|
||||
import org.gradle.api.tasks.TaskAction;
|
||||
|
||||
import net.fabricmc.loom.util.SourceRemapper;
|
||||
import net.fabricmc.loom.util.ZipReprocessorUtil;
|
||||
|
||||
public class RemapSourcesJarTask extends AbstractLoomTask {
|
||||
private Object input;
|
||||
private Object output;
|
||||
private String direction = "intermediary";
|
||||
private SourceRemapper sourceRemapper = null;
|
||||
private final Property<Boolean> archivePreserveFileTimestamps;
|
||||
private final Property<Boolean> archiveReproducibleFileOrder;
|
||||
|
||||
public RemapSourcesJarTask() {
|
||||
ObjectFactory objectFactory = getProject().getObjects();
|
||||
archivePreserveFileTimestamps = objectFactory.property(Boolean.class);
|
||||
archiveReproducibleFileOrder = objectFactory.property(Boolean.class);
|
||||
}
|
||||
|
||||
@TaskAction
|
||||
public void remap() throws Exception {
|
||||
if (sourceRemapper == null) {
|
||||
SourceRemapper.remapSources(getProject(), getInput(), getOutput(), direction.equals("named"));
|
||||
ZipReprocessorUtil.reprocessZip(getOutput(), archivePreserveFileTimestamps.getOrElse(true), archiveReproducibleFileOrder.getOrElse(false));
|
||||
} else {
|
||||
sourceRemapper.scheduleRemapSources(getInput(), getOutput());
|
||||
sourceRemapper.scheduleRemapSources(getInput(), getOutput(), archivePreserveFileTimestamps.getOrElse(true), archiveReproducibleFileOrder.getOrElse(false));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user