Add Linux and macOS support, batch class transformations with a disk cache, and add cross-platform release packaging. Also improve runtime namespace handling, keybind editing, and startup behavior.
This commit is contained in:
bbldrizzy committed 2026-10-27 20:30:09 +00:00
1 parent 910a126f04
commit 38ff6d387c
29 files changed
+2234 -491

No files matched your search

@@ -39,7 +39,7 @@ public final class InPlaceTransformer {
private final TransformerManager manager;
private final ClassLoader loader;
private int sequence;
private final java.util.concurrent.atomic.AtomicInteger sequence = new java.util.concurrent.atomic.AtomicInteger();
public InPlaceTransformer(TransformerManager manager, ClassLoader loader) {
this.manager = manager;
@@ -67,7 +67,7 @@ public final class InPlaceTransformer {
if (after.interfaces.size() != before.interfaces.size())
throw new IllegalStateException(dottedName + ": transformer changed the interface list");
String helperName = HOOK_PACKAGE + "H" + (sequence++) + "_" + after.name.substring(after.name.lastIndexOf('/') + 1).replace('$', '_');
String helperName = HOOK_PACKAGE + "H" + (sequence.getAndIncrement()) + "_" + after.name.substring(after.name.lastIndexOf('/') + 1).replace('$', '_');
ClassNode helper = new ClassNode();
helper.version = after.version;
helper.access = Opcodes.ACC_PUBLIC | Opcodes.ACC_FINAL | Opcodes.ACC_SUPER;