Skip to content

Commit

Permalink
Migrate to Fabric TR
Browse files Browse the repository at this point in the history
  • Loading branch information
shedaniel committed Dec 26, 2023
1 parent cea4b39 commit 119898d
Show file tree
Hide file tree
Showing 39 changed files with 66 additions and 79 deletions.
4 changes: 2 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jackson = "2.16.0"
guava = "33.0.0-jre"

stitch = "0.6.2"
tiny-remapper = "1.10.23"
tiny-remapper = "0.9.0"
access-widener = "2.1.0"
mapping-io = "0.5.1"
lorenz-tiny = "4.0.2"
Expand Down Expand Up @@ -44,7 +44,7 @@ jackson = { module = "com.fasterxml.jackson.core:jackson-databind", version.ref
guava = { module = "com.google.guava:guava", version.ref = "guava" }

fabric-stitch = { module = "net.fabricmc:stitch", version.ref = "stitch" }
fabric-tiny-remapper = { module = "dev.architectury:tiny-remapper", version.ref = "tiny-remapper" }
fabric-tiny-remapper = { module = "net.fabricmc:tiny-remapper", version.ref = "tiny-remapper" }
fabric-access-widener = { module = "net.fabricmc:access-widener", version.ref = "access-widener" }
fabric-mapping-io = { module = "net.fabricmc:mapping-io", version.ref = "mapping-io" }
fabric-lorenz-tiny = { module = "net.fabricmc:lorenz-tiny", version.ref = "lorenz-tiny" }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,9 @@

package net.fabricmc.loom.api.processor;

import dev.architectury.tinyremapper.TinyRemapper;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.tinyremapper.TinyRemapper;

public interface MappingProcessorContext {
LazyCloseable<TinyRemapper> createRemapper(MappingsNamespace from, MappingsNamespace to);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,11 @@

package net.fabricmc.loom.api.processor;

import dev.architectury.tinyremapper.TinyRemapper;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
import net.fabricmc.loom.configuration.providers.minecraft.MinecraftJarConfiguration;
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.mappingio.tree.MemoryMappingTree;
import net.fabricmc.tinyremapper.TinyRemapper;

public interface ProcessorContext {
MinecraftJarConfiguration getJarConfiguration();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,11 @@

package net.fabricmc.loom.api.remapping;

import dev.architectury.tinyremapper.TinyRemapper;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.Nullable;

import net.fabricmc.tinyremapper.TinyRemapper;

/**
* A remapper extension, that has direct access to the TinyRemapper APIs.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@

import java.io.IOException;

import dev.architectury.tinyremapper.TinyRemapper;
import org.jetbrains.annotations.Nullable;

import net.fabricmc.accesswidener.AccessWidenerVisitor;
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.loom.util.fmj.ModEnvironment;
import net.fabricmc.tinyremapper.TinyRemapper;

public interface AccessWidenerEntry {
ModEnvironment environment();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@

import javax.inject.Inject;

import dev.architectury.tinyremapper.TinyRemapper;
import org.gradle.api.file.RegularFileProperty;
import org.jetbrains.annotations.Nullable;

Expand All @@ -47,6 +46,7 @@
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.loom.util.fmj.FabricModJson;
import net.fabricmc.loom.util.fmj.ModEnvironment;
import net.fabricmc.tinyremapper.TinyRemapper;

public class AccessWidenerJarProcessor implements MinecraftJarProcessor<AccessWidenerJarProcessor.Spec> {
private final String name;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,14 @@
import java.nio.file.Files;
import java.nio.file.Path;

import dev.architectury.tinyremapper.TinyRemapper;
import org.jetbrains.annotations.Nullable;

import net.fabricmc.accesswidener.AccessWidenerReader;
import net.fabricmc.accesswidener.AccessWidenerVisitor;
import net.fabricmc.loom.util.Checksum;
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.loom.util.fmj.ModEnvironment;
import net.fabricmc.tinyremapper.TinyRemapper;

public record LocalAccessWidenerEntry(Path path, String hash) implements AccessWidenerEntry {
public static LocalAccessWidenerEntry create(Path path) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
import java.util.List;
import java.util.Map;

import dev.architectury.tinyremapper.TinyRemapper;
import org.jetbrains.annotations.Nullable;

import net.fabricmc.accesswidener.AccessWidenerReader;
Expand All @@ -41,6 +40,7 @@
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.loom.util.fmj.FabricModJson;
import net.fabricmc.loom.util.fmj.ModEnvironment;
import net.fabricmc.tinyremapper.TinyRemapper;

/**
* {@link AccessWidenerEntry} implementation for a {@link FabricModJson}.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
import java.io.UncheckedIOException;
import java.util.List;

import dev.architectury.tinyremapper.TinyRemapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand All @@ -40,6 +39,7 @@
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.mappingio.tree.MappingTree;
import net.fabricmc.mappingio.tree.MemoryMappingTree;
import net.fabricmc.tinyremapper.TinyRemapper;

public final class TransitiveAccessWidenerMappingsProcessor implements MinecraftJarProcessor.MappingsProcessor<AccessWidenerJarProcessor.Spec> {
public static final TransitiveAccessWidenerMappingsProcessor INSTANCE = new TransitiveAccessWidenerMappingsProcessor();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
import java.io.IOException;
import java.util.List;

import dev.architectury.tinyremapper.TinyRemapper;
import org.objectweb.asm.ClassVisitor;

import net.fabricmc.accesswidener.AccessWidener;
Expand All @@ -36,6 +35,7 @@
import net.fabricmc.loom.configuration.mods.dependency.ModDependency;
import net.fabricmc.loom.util.Constants;
import net.fabricmc.loom.util.ModPlatform;
import net.fabricmc.tinyremapper.TinyRemapper;

public record AccessWidenerAnalyzeVisitorProvider(AccessWidener accessWidener) implements TinyRemapper.AnalyzeVisitorProvider {
static AccessWidenerAnalyzeVisitorProvider createFromMods(String namespace, List<ModDependency> mods, ModPlatform platform) throws IOException {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,6 @@
import com.google.common.base.Stopwatch;
import com.google.gson.JsonObject;
import dev.architectury.loom.util.MappingOption;
import dev.architectury.tinyremapper.InputTag;
import dev.architectury.tinyremapper.NonClassCopyMode;
import dev.architectury.tinyremapper.OutputConsumerPath;
import dev.architectury.tinyremapper.TinyRemapper;
import dev.architectury.tinyremapper.extension.mixin.MixinExtension;
import org.gradle.api.Project;
import org.gradle.api.artifacts.Configuration;
import org.gradle.api.attributes.Usage;
Expand All @@ -72,6 +67,11 @@
import net.fabricmc.loom.util.srg.AtRemapper;
import net.fabricmc.loom.util.srg.CoreModClassRemapper;
import net.fabricmc.mappingio.tree.MemoryMappingTree;
import net.fabricmc.tinyremapper.InputTag;
import net.fabricmc.tinyremapper.NonClassCopyMode;
import net.fabricmc.tinyremapper.OutputConsumerPath;
import net.fabricmc.tinyremapper.TinyRemapper;
import net.fabricmc.tinyremapper.extension.mixin.MixinExtension;

public class ModProcessor {
private static final String toM = MappingsNamespace.NAMED.toString();
Expand Down Expand Up @@ -176,8 +176,6 @@ private void remapJars(List<ModDependency> remapList) throws IOException {
TinyRemapper.Builder builder = TinyRemapper.newRemapper()
.withKnownIndyBsm(extension.getKnownIndyBsms().get())
.withMappings(TinyRemapperHelper.create(mappings, fromM, toM, false))
.logger(project.getLogger()::lifecycle)
.logUnknownInvokeDynamic(false)
.renameInvalidLocals(false)
.extraAnalyzeVisitor(AccessWidenerAnalyzeVisitorProvider.createFromMods(fromM, remapList, extension.getPlatform().get()));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,11 @@
import java.io.UncheckedIOException;
import java.nio.file.Path;

import dev.architectury.tinyremapper.TinyRemapper;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
import net.fabricmc.loom.configuration.ConfigContext;
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.loom.util.TinyRemapperHelper;
import net.fabricmc.tinyremapper.TinyRemapper;

public final class ContextImplHelper {
private ContextImplHelper() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,11 @@

package net.fabricmc.loom.configuration.processors;

import dev.architectury.tinyremapper.TinyRemapper;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
import net.fabricmc.loom.api.processor.MappingProcessorContext;
import net.fabricmc.loom.configuration.ConfigContext;
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.tinyremapper.TinyRemapper;

public record MappingProcessorContextImpl(ConfigContext configContext) implements MappingProcessorContext {
@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
package net.fabricmc.loom.configuration.processors;

import dev.architectury.loom.util.MappingOption;
import dev.architectury.tinyremapper.TinyRemapper;

import net.fabricmc.loom.LoomGradleExtension;
import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
Expand All @@ -35,6 +34,7 @@
import net.fabricmc.loom.configuration.providers.minecraft.MinecraftJarConfiguration;
import net.fabricmc.loom.util.LazyCloseable;
import net.fabricmc.mappingio.tree.MemoryMappingTree;
import net.fabricmc.tinyremapper.TinyRemapper;

public record ProcessorContextImpl(ConfigContext configContext, MinecraftJar minecraftJar) implements ProcessorContext {
@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,10 +55,6 @@
import dev.architectury.loom.forge.UserdevConfig;
import dev.architectury.loom.util.MappingOption;
import dev.architectury.loom.util.TempFiles;
import dev.architectury.tinyremapper.InputTag;
import dev.architectury.tinyremapper.NonClassCopyMode;
import dev.architectury.tinyremapper.OutputConsumerPath;
import dev.architectury.tinyremapper.TinyRemapper;
import org.gradle.api.Project;
import org.gradle.api.logging.LogLevel;
import org.gradle.api.logging.Logger;
Expand Down Expand Up @@ -93,6 +89,10 @@
import net.fabricmc.loom.util.srg.InnerClassRemapper;
import net.fabricmc.mappingio.tree.MappingTree;
import net.fabricmc.mappingio.tree.MemoryMappingTree;
import net.fabricmc.tinyremapper.InputTag;
import net.fabricmc.tinyremapper.NonClassCopyMode;
import net.fabricmc.tinyremapper.OutputConsumerPath;
import net.fabricmc.tinyremapper.TinyRemapper;

public class MinecraftPatchedProvider {
private static final String LOOM_PATCH_VERSION_KEY = "Loom-Patch-Version";
Expand Down Expand Up @@ -232,8 +232,6 @@ private TinyRemapper buildRemapper(SharedServiceManager serviceManager, Path inp
MemoryMappingTree mappings = mappingsService.getMappingTree();

TinyRemapper remapper = TinyRemapper.newRemapper()
.logger(logger::lifecycle)
.logUnknownInvokeDynamic(false)
.withMappings(TinyRemapperHelper.create(mappings, sourceNamespace, "official", true))
.withMappings(InnerClassRemapper.of(InnerClassRemapper.readClassNames(input), mappings, sourceNamespace, "official"))
.renameInvalidLocals(true)
Expand All @@ -244,7 +242,6 @@ private TinyRemapper buildRemapper(SharedServiceManager serviceManager, Path inp
MappingsProviderVerbose.saveFile(remapper);
}

remapper.prepareClasses();
return remapper;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@
import java.util.HashMap;
import java.util.Map;

import dev.architectury.tinyremapper.TinyRemapper;
import dev.architectury.tinyremapper.api.TrClass;
import org.gradle.api.Project;
import org.objectweb.asm.ClassVisitor;
import org.objectweb.asm.commons.Remapper;
Expand All @@ -40,6 +38,8 @@
import net.fabricmc.loom.util.Constants;
import net.fabricmc.loom.util.TinyRemapperHelper;
import net.fabricmc.loom.util.service.SharedServiceManager;
import net.fabricmc.tinyremapper.TinyRemapper;
import net.fabricmc.tinyremapper.api.TrClass;

public record SignatureFixerApplyVisitor(Map<String, String> signatureFixes) implements TinyRemapper.ApplyVisitorProvider {
@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,11 @@
import java.nio.file.Path;
import java.util.List;

import dev.architectury.tinyremapper.NonClassCopyMode;
import dev.architectury.tinyremapper.OutputConsumerPath;
import dev.architectury.tinyremapper.TinyRemapper;

import net.fabricmc.loom.configuration.ConfigContext;
import net.fabricmc.loom.configuration.providers.BundleMetadata;
import net.fabricmc.tinyremapper.NonClassCopyMode;
import net.fabricmc.tinyremapper.OutputConsumerPath;
import net.fabricmc.tinyremapper.TinyRemapper;

public class SingleJarMinecraftProvider extends MinecraftProvider {
private final Environment environment;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,6 @@
import java.util.function.Function;

import dev.architectury.loom.util.MappingOption;
import dev.architectury.tinyremapper.OutputConsumerPath;
import dev.architectury.tinyremapper.TinyRemapper;
import org.gradle.api.Project;

import net.fabricmc.loom.LoomGradleExtension;
Expand All @@ -61,6 +59,8 @@
import net.fabricmc.loom.util.srg.InnerClassRemapper;
import net.fabricmc.loom.util.srg.RemapObjectHolderVisitor;
import net.fabricmc.mappingio.tree.MemoryMappingTree;
import net.fabricmc.tinyremapper.OutputConsumerPath;
import net.fabricmc.tinyremapper.TinyRemapper;

public abstract class AbstractMappedMinecraftProvider<M extends MinecraftProvider> implements MappedMinecraftProvider.ProviderImpl {
protected final M minecraftProvider;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@

import java.util.List;

import dev.architectury.tinyremapper.TinyRemapper;
import org.gradle.api.Project;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
Expand All @@ -35,6 +34,7 @@
import net.fabricmc.loom.configuration.providers.minecraft.SingleJarEnvType;
import net.fabricmc.loom.configuration.providers.minecraft.SingleJarMinecraftProvider;
import net.fabricmc.loom.configuration.providers.minecraft.SplitMinecraftProvider;
import net.fabricmc.tinyremapper.TinyRemapper;

public abstract sealed class IntermediaryMinecraftProvider<M extends MinecraftProvider> extends AbstractMappedMinecraftProvider<M> permits IntermediaryMinecraftProvider.MergedImpl, IntermediaryMinecraftProvider.SingleJarImpl, IntermediaryMinecraftProvider.SplitImpl {
public IntermediaryMinecraftProvider(Project project, M minecraftProvider) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@

import java.util.List;

import dev.architectury.tinyremapper.TinyRemapper;
import org.gradle.api.Project;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
Expand All @@ -36,6 +35,7 @@
import net.fabricmc.loom.configuration.providers.minecraft.SingleJarMinecraftProvider;
import net.fabricmc.loom.configuration.providers.minecraft.SplitMinecraftProvider;
import net.fabricmc.loom.util.SidedClassVisitor;
import net.fabricmc.tinyremapper.TinyRemapper;

public abstract sealed class MojangMappedMinecraftProvider<M extends MinecraftProvider> extends AbstractMappedMinecraftProvider<M> permits MojangMappedMinecraftProvider.MergedImpl, MojangMappedMinecraftProvider.SingleJarImpl, MojangMappedMinecraftProvider.SplitImpl {
public MojangMappedMinecraftProvider(Project project, M minecraftProvider) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@

import java.util.List;

import dev.architectury.tinyremapper.TinyRemapper;
import org.gradle.api.Project;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
Expand All @@ -36,6 +35,7 @@
import net.fabricmc.loom.configuration.providers.minecraft.SingleJarEnvType;
import net.fabricmc.loom.configuration.providers.minecraft.SingleJarMinecraftProvider;
import net.fabricmc.loom.configuration.providers.minecraft.SplitMinecraftProvider;
import net.fabricmc.tinyremapper.TinyRemapper;

public abstract class NamedMinecraftProvider<M extends MinecraftProvider> extends AbstractMappedMinecraftProvider<M> {
public NamedMinecraftProvider(Project project, M minecraftProvider) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@

import java.util.List;

import dev.architectury.tinyremapper.TinyRemapper;
import org.gradle.api.Project;

import net.fabricmc.loom.api.mappings.layered.MappingsNamespace;
Expand All @@ -36,6 +35,7 @@
import net.fabricmc.loom.configuration.providers.minecraft.SingleJarMinecraftProvider;
import net.fabricmc.loom.configuration.providers.minecraft.SplitMinecraftProvider;
import net.fabricmc.loom.util.SidedClassVisitor;
import net.fabricmc.tinyremapper.TinyRemapper;

public abstract sealed class SrgMinecraftProvider<M extends MinecraftProvider> extends AbstractMappedMinecraftProvider<M> permits SrgMinecraftProvider.MergedImpl, SrgMinecraftProvider.SingleJarImpl, SrgMinecraftProvider.SplitImpl {
public SrgMinecraftProvider(Project project, M minecraftProvider) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,10 @@
import java.nio.file.StandardOpenOption;
import java.util.function.BiConsumer;

import dev.architectury.tinyremapper.InputTag;
import dev.architectury.tinyremapper.TinyRemapper;

import net.fabricmc.loom.util.FileSystemUtil;
import net.fabricmc.loom.util.ThreadingUtils;
import net.fabricmc.tinyremapper.InputTag;
import net.fabricmc.tinyremapper.TinyRemapper;

public class OutputRemappingHandler {
public static void remap(TinyRemapper remapper, Path assets, Path output) throws IOException {
Expand Down
Loading

0 comments on commit 119898d

Please sign in to comment.