shedaniel 001f4b58f6 Performance Optimisations on Project Setup
"Sorry I kinda put them into a single commit" - shedaniel

- Fix AtRemapper into not using ZipUtil#transformEntries, which is slow as it transverses the whole zip tree
- Optimises InnerClassRemapper into not using ZipUtil#iterate, which provides the InputStream of the ZipEntry, data that we don't utilize. Switch to a simple FileSystem to traverse through the list of files
- Make MappingsProvider respect mergedv2 yarn files, skipping merging and reordering namespaces in the process. Users that wish to benefit from this should switch to using mergedv2 yarn artifacts
- Make MinecraftMappedProvider only read inputs once
- Replace (TinyRemapper, official -> named) to (AsmRemapper, intermediary -> named), and chain it to the (TinyRemapper, official -> intermediary) to avoid reading the Minecraft jar again
- Multi-thread MinecraftPatchedProvider#fixParameterAnnotation properly

On a typical project, these changes can save up to 50% of the import time. Tested on architectury example mod, which brought import times from 1m 51s to 48s.
2021-04-22 23:41:35 +08:00
2020-12-24 20:58:30 +00:00
2021-04-13 16:41:47 +08:00
2020-07-27 15:58:31 +03:00
2018-10-22 19:25:18 +01:00
2018-10-27 16:14:05 +02:00
2016-08-16 23:29:10 +01:00
2021-02-03 11:51:52 +08:00

Forgified Loom

Talk to us on Discord!


A fork of Juuxel's Loom fork that is a fork of Fabric Loom that supports the Forge modding toolchain.

A Gradle plugin to setup a deobfuscated development environment for Minecraft mods. Primarily used in the Fabric toolchain.

  • Has built in support for tiny mappings (Used by Yarn)
  • Utilises the Fernflower and CFR decompilers to generate source code with comments.
  • Designed to support modern versions of Minecraft (Tested with 1.14.4 and upwards)
  • Built in support for IntelliJ IDEA, Eclipse and Visual Studio Code to generate run configurations for Minecraft.
    • Currently, only IntelliJ IDEA and Visual Studio Code work with Forge Loom.
  • Loom targets a wide range of Gradle versions. Tested with 4.9 up to 6.7
  • Supports the latest version of Java all the way down to Java 8

Usage

View the documentation for usages.

Description
No description provided
Readme MIT 13 MiB
Languages
Java 75.3%
Groovy 23.9%
Kotlin 0.8%