Commit Graph

1768 Commits

Author SHA1 Message Date
Juuz
915521cd23 Fix code style 2023-04-30 02:46:15 +03:00
Juuz
c44640bf6e GenerateForgePatchedSourcesTask: Apply AT and SAS before decompiling
This makes the patches not get rejected, and the output actually looks like
it should now.
2023-04-30 02:44:08 +03:00
Juuz
560d8b94aa InjectLogic: Don't try to create null parent 2023-04-30 01:34:24 +03:00
Juuz
6736f5ce94 FunctionLogic: Set output name to output.jar 2023-04-30 01:34:06 +03:00
Juuz
7c1915db8f PatchedDecompileTest: Remove 1.14.4 and 1.16.5 from tested game versions
They need a Java 8 toolchain for testing, but toolchains (more specifically,
the Foojay toolchain resolver plugin) cannot be used in a test kit
environment since the native services it needs are force-disabled.

The versions themselves should still work when used with the correct JDK
via toolchains.
2023-04-30 01:02:50 +03:00
Juuz
3d74e11167 Fix Forge setup ordering, centralise Forge cache code
The setup of dependency providers must happen after the custom repositories
added by Loom are finalised, but they're modified by the library processor
system. Therefore, we need to
1. Initialise dependency providers later.
2. Replace usages of specific dependency providers with (potentially slower)
   alternatives that don't resolve any dependencies.
2023-04-30 01:00:58 +03:00
Juuz
9dda8bbfb8 ForgeToolExecutor: Use project Java toolchain if available 2023-04-30 00:23:00 +03:00
Juuz
ccbad51f17 Forge tests: Add multiple Gradle versions where easily possible 2023-04-29 22:57:15 +03:00
Juuz
4efac2b3b9 Forge tests: Fix convention usage 2023-04-29 22:49:35 +03:00
Juuz
53d6a8c7d3 MixinExtensionImpl: Remove convention usage 2023-04-29 22:43:06 +03:00
Juuz
bf707bd5eb Disable FabricAPITest in CI since it never completes 2023-04-29 22:38:52 +03:00
Juuz
4341297dff Merge remote-tracking branch 'upstream/dev/1.2' into dev/1.2
# Conflicts:
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/IntermediaryMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/NamedMinecraftProvider.java
2023-04-24 11:25:44 +03:00
Juuz
c78607ad97 Run spotless 2023-04-24 11:24:12 +03:00
modmuss50
dcbdbf0e30 Fix @Environment(EnvType.CLIENT) not being added to the named minecraft client only jar. 2023-04-23 14:15:45 +01:00
Juuz
7b5bc30f64 Fix code format 2023-04-23 13:52:51 +03:00
Juuz
9b98c655a1 Merge remote-tracking branch 'upstream/dev/1.2' into dev/1.2
# Conflicts:
#	src/main/java/net/fabricmc/loom/configuration/LoomConfigurations.java
#	src/main/java/net/fabricmc/loom/configuration/ide/RunConfig.java
2023-04-23 13:39:04 +03:00
Juuz
b1e378eb61 FmlLogConfigTest: Add 1.17+ MC versions 2023-04-23 13:36:37 +03:00
Juuz
b527ed9afe Add loom.forge.useForgeLoggerConfig
Closes #126.
2023-04-23 13:35:35 +03:00
Juuz
9784c5491e Add back more missing code 2023-04-23 12:32:09 +03:00
modmuss50
2e6a1a9128 Fix config roles. (#872) 2023-04-23 10:02:56 +01:00
Juuz
162b504d64 RunConfigSettings: Add support for fully custom main class (#871) 2023-04-23 09:22:41 +01:00
Juuz
200b38096a LoomConfigurations: Add forgeRuntimeLibrary to testRuntimeClasspath 2023-04-23 11:13:35 +03:00
Juuz
9031476066 Fix compilation errors and add back missing code 2023-04-23 11:10:49 +03:00
Juuz
89fd6ff6c9 Merge 1.2, part 3 2023-04-23 10:58:33 +03:00
Juuz
e162f9e56d Fix compilation errors 2023-04-23 10:54:18 +03:00
Juuz
27cfb8c033 Merge 1.2, part 2 2023-04-23 10:35:54 +03:00
Juuz
4b2090f6fe Merge 1.2, part 1 2023-04-23 10:30:30 +03:00
modmuss50
743ba4de66 Support 23w16a & Windows ARM64, and fix regression when adding ARM support on older versions. (#870)
* Support 23w16a & Windows ARM64, and fix regression when adding ARM support on older versions.

* Fix build
2023-04-20 22:42:44 +01:00
Juuz
8709c9f0d7 Update forge runtime to 1.1.8 to fix crash 2023-04-21 00:20:50 +03:00
Juuz
5a3864ac8d Update forge runtime to 1.1.6 2023-04-20 22:29:25 +03:00
Juuz
0afa1ee8ba Update forge runtime to 1.1.5 2023-04-20 22:03:30 +03:00
Juuz
e40c2ace57 Merge remote-tracking branch 'upstream/dev/1.1' into dev/1.1 2023-04-20 22:02:46 +03:00
modmuss50
da9f601c2f Set configuration roles + cleanup setup classes. (#868) 2023-04-20 08:45:18 +01:00
modmuss50
b35753476c Fix applying mods to server libraries. 2023-04-18 14:27:54 +01:00
modmuss50
89d09600c5 Rewrite Kotlin metadata remapping to support the latest kotlin metadata library. (#866) 2023-04-17 23:46:45 +01:00
modmuss50
0d2152444f Allow decompilers to set a smaller min heap size. 2023-04-17 15:43:07 +01:00
modmuss50
1015ef09ff Update to Gradle 8.1 (#864)
* Update to Gradle 8.1

* Fix build, run RunConfigTest against all gradle versions.

* Fix build
2023-04-17 13:49:49 +01:00
modmuss50
c16303b9b2 Rewrite Minecraft Library handling. (#857)
This PR rewrites the Minecraft library processing with a more structured and testable set of "library processors". The old code is a mess of special cases and work arounds for various issues on various platforms.

Previously this was only really used on lesser used platforms/versions so wasnt a major issue if things broke, however current shipping Minecraft versions (1.19.4) use an LWJGL version that does not work well on Java versions new than 19. With this change LWJGL is upgraded when using Java 19 or later.

Upgraded libraries are also now only placed on the runtime classpath, this prevents you from using newer library features in your mod.
2023-04-17 00:07:52 +01:00
modmuss50
11f69ccbf0 Fix run tasks in Gradle 8.1 (#863) 2023-04-16 23:23:44 +01:00
modmuss50
95a260d923 Test against Gradle 8.1 and 8.2 nightly. (#846) 2023-04-16 17:19:21 +01:00
modmuss50
9e7458f76a 1.2 2023-04-16 14:46:50 +01:00
Juuz
be2818180f Fix inconsistent Forge library transformation hash (#128)
* SrgMerger: Add mergeSrg overload returning the raw MemoryMappingTree

* Rewrite ForgeLibrariesProvider for consistent transformed output paths

Now it also only transforms fmlloader instead of pointlessly copying
around unrelated files and looking inside them. We know where we can find
the files we need to patch.

Fixes #127 which is caused by the DLI config and runtime fmlloader jar
paths being different due to their transform ID hashes differing.

* Use a local Maven repo instead

* ForgeLibrariesProvider: Adjust comment
2023-04-16 12:14:09 +03:00
Juuz
9534e9a9f5 ForgeTest: Add 1.19.4 to list of tested versions 2023-04-16 00:32:54 +03:00
Juuz
a0f189feb6 Merge remote-tracking branch 'upstream/dev/1.1' into dev/1.1 2023-04-14 17:56:41 +03:00
modmuss50
4ff9f726e1 Work around Gradle 8.1 bug causing Files.readString(Path) to call path.toFile(). 2023-04-12 19:56:01 +01:00
Juuz
5b1c18b3c1 Fix code format
Also replaced some Groovy 3 syntax with Groovy 2 syntax because
Eclipse is bad and outdated as usual.
2023-04-03 18:00:31 +03:00
Juuz
b7b5d5023e Merge remote-tracking branch 'upstream/dev/1.1' into dev/1.1
# Conflicts:
#	build.gradle
#	src/test/groovy/net/fabricmc/loom/test/integration/FabricAPITest.groovy
#	src/test/groovy/net/fabricmc/loom/test/unit/kotlin/KotlinRemapperClassloaderTest.groovy
#	src/test/groovy/net/fabricmc/loom/test/unit/layeredmappings/LayeredMappingSpecBuilderTest.groovy
#	src/test/groovy/net/fabricmc/loom/test/unit/layeredmappings/MojangMappingLayerTest.groovy
#	src/test/resources/projects/dependencyResolutionManagement/settings.gradle
2023-04-03 17:43:30 +03:00
Juuz
7c05f2d23f FabricModJsonFactory.containsMod: Fix infinite recursion on Quilt 2023-04-03 17:38:24 +03:00
modmuss50
75a98a5038 Only force re-downloads when manually refreshing deps (#851) 2023-04-02 15:40:09 +01:00
Juuz
f4fb29e26c Remove beta notice 2023-04-01 16:50:13 +03:00