Commit Graph

476 Commits

Author SHA1 Message Date
Juuz
4944d0f799 Remove special casing of Java 21 test 2024-07-01 20:06:38 +03:00
Jab125
9e4a70f742 Fix Forge 50 (1.20.6) (#219)
Co-authored-by: shedaniel <daniel@shedaniel.me>
Co-authored-by: Juuz <6596629+Juuxel@users.noreply.github.com>
2024-07-01 20:04:40 +03:00
Juuz
6f463e9751 Merge 1.7, part 4 2024-07-01 20:01:06 +03:00
Juuz
a0d33732a3 Merge 1.7, part 3 2024-07-01 19:55:25 +03:00
Juuz
6f08fa51ec Merge 1.7, part 1 2024-07-01 19:20:21 +03:00
modmuss
097fd98fc9 Update to Gradle 8.8 (#1125) 2024-06-14 08:49:47 +01:00
modmuss50
e621e340f8 Don't publish snapshots for experimental versions 2024-05-17 17:23:33 +01:00
modmuss50
6c7ef44489 Publish experimental versions to maven 2024-05-17 17:19:25 +01:00
modmuss
5b7d598d02 More work towards config caching support (#1115) 2024-05-05 10:21:36 +01:00
modmuss
9a3b82c8a3 Initial config caching work (#1053) 2024-04-15 18:56:59 +01:00
modmuss50
24a38025cf Bump version 2024-04-10 09:09:06 +01:00
shedaniel
479331d9cd Merge remote-tracking branch 'FabricMC/exp/1.6' into exp/1.6
# Conflicts:
#	gradle/libs.versions.toml
#	src/main/java/net/fabricmc/loom/LoomGradleExtension.java
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/build/nesting/IncludedJarFactory.java
#	src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MergedMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftJarConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/SingleJarMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/extension/LoomFiles.java
#	src/main/java/net/fabricmc/loom/extension/LoomFilesBaseImpl.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionApiImpl.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionImpl.java
#	src/main/java/net/fabricmc/loom/task/GenerateSourcesTask.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/util/fmj/FabricModJsonFactory.java
2024-03-23 01:06:56 +09:00
modmuss
c60b456f7e Print info about locked files during configuration or genSources (#1066)
* Print info about locked files during configuration or genSources

* Use release version

* Output adjustments

* Fix build

* Add user back
2024-03-11 21:16:46 +00:00
shedaniel
3347cfdd4a Merge remote-tracking branch 'FabricMC/exp/1.6' into exp/1.6
# Conflicts:
#	.github/workflows/publish.yml
#	build.gradle
#	gradle/libs.versions.toml
#	src/main/java/net/fabricmc/loom/LoomGradleExtension.java
#	src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/ifaceinject/InterfaceInjectionProcessor.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionApiImpl.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionImpl.java
#	src/main/java/net/fabricmc/loom/task/GenVsCodeProjectTask.java
#	src/test/resources/projects/kotlin/build.gradle.kts
2024-02-29 18:57:33 +09:00
modmuss
0dc1ba012a Update deps (#1054) 2024-02-24 15:04:56 +00:00
modmuss50
f26c49c36f Disable DebugLineNumbersTest in CI tests. 2024-02-03 23:25:06 +00:00
modmuss50
ac3fa8d410 Start on Loom 1.6 2024-02-02 18:16:46 +00:00
shedaniel
39e23837e5 Merge remote-tracking branch 'origin/dev/1.4' into dev/1.5
# Conflicts:
#	gradle/libs.versions.toml
2024-01-10 22:28:25 +09:00
shedaniel
c5a1a2d6b2 Merge remote-tracking branch 'FabricMC/dev/1.5' into dev/1.5
# Conflicts:
#	src/main/java/net/fabricmc/loom/configuration/mods/ModConfigurationRemapper.java
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/task/service/TinyRemapperService.java
#	src/test/groovy/net/fabricmc/loom/test/integration/FabricAPITest.groovy
2024-01-10 22:27:36 +09:00
modmuss
c5d73548e7 Remove jackson (#1014)
* Remove jackson

* Fix unit tests
2024-01-02 22:35:37 +00:00
shedaniel
beb04d30f2 Merge remote-tracking branch 'FabricMC/exp/1.5' into exp/1.5
# Conflicts:
#	.github/workflows/publish.yml
#	gradle/libs.versions.toml
#	src/main/java/net/fabricmc/loom/LoomGradleExtension.java
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/build/nesting/IncludedJarFactory.java
#	src/main/java/net/fabricmc/loom/configuration/decompile/SingleJarDecompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/tiny/TinyJarInfo.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/AbstractMappedMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/ProcessedNamedMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionApiImpl.java
#	src/main/java/net/fabricmc/loom/task/RemapTaskConfiguration.java
#	src/test/groovy/net/fabricmc/loom/test/unit/kotlin/KotlinRemapperClassloaderTest.groovy
2023-12-26 18:39:12 +08:00
Juuz
45bb6841d8 Fix NeoForge ATs not being fully remapped (#185)
Fixes #184. Also rewrites all code using the CadixDev AT library to use our fork.
2023-12-16 20:18:18 +02:00
modmuss
b987b4e711 Always use unix line endings on windows (#986)
* Always use unix line endings on windows

* Also run checks on windows.

* Fix binary files :)
2023-11-23 22:36:57 +00:00
shedaniel
ea1d58e106 Merge remote-tracking branch 'FabricMC/exp/1.5' into exp/1.5
# Conflicts:
#	build.gradle
#	gradle/libs.versions.toml
#	src/main/java/net/fabricmc/loom/configuration/ide/RunConfigSettings.java
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/MappingConfiguration.java
#	src/test/groovy/net/fabricmc/loom/test/integration/FabricAPITest.groovy
2023-11-18 00:33:59 +08:00
Juuz
a11b828380 NeoForge support (#166)
* Initial plumbing for NeoForge support

* Fix checkstyle

* Add ModPlatform.id

* Use NeoForge-specific cache

* Use NeoForge-specific dependency configuration

This is only for the "(neo)forge" configuration exposed
as API. The other configurations remain the same.

* Add test for basic NeoForge 1.20.2 projects

* Implement hacky fast track for NeoForge field migration

In other works, we skip field migrating for now.

* Disable patched decompilation task on Neo

* Disable mixin AP for building on NeoForge

* Many changes related to NeoForge mappings and remapping

* Code style and related fixes

* McpExecutor: Add support for downloading deps via Gradle

Also adds support for downloading a file without a repo
for NeoForm functions.

* Fix wrong configurations being used on NeoForge

* Fix mixin version detection on NeoForge

* Rename MinecraftPatchedProvider jar paths on NeoForge

* Test NeoForge against a client-only MC jar

* Add DFU for codecs, support NeoForge run config templates

* Centralise userdev config reading, support missing SAS

* Set up Shadow for bundling DFU

* Use correct name for NeoForm in cache files

* RemapJarTask: Fix check using isForgeLike for Forge

* MojangMappingsMerger: Complete and reorder mappings

* Fix SRG being used on NeoForge

* Fix SRG being used on NeoForge for ATs

* Use client pipeline for merged to avoid patch issues on Neo

* Update to architectury-loom-runtime 2.0

* Fix Minecraft jar name on Neo

* Fix MojangMappingsMerger having incomplete names

* Fix NeoForge mod dependency remapping using wrong mappings

* Quiet down MojangMappingsMerger

* Fix (Neo)Forge builtin coremods not being remapped

Fixes #146.

* Disable deprecated data generation API on NeoForge

* Use release version of the forge runtime

* Revert "Set up Shadow for bundling DFU"

This reverts commit 2bb8166744.

* Make NeoForge Field Migration work

* NeoForge shouldn't try to get datagen mods

* Fix checkstyle

* Remove mojang maven

* Split Forge and NeoForge extensions

* SimpleNeoForgeTest: Bump Neo version and fix Yarn version

* Remove resolved TODOs

* Re-enable joined NeoForm pipeline

* MPP: Rename srg -> intermediate jars

* Reintroduce namespace filtering for mapping trees

Should be a simple optimisation to avoid reading an
additional ns.

* ForgeRunTemplateTest: Fix code format

* Adapt SrgMerger into ForgeMappingsMerger (#169)

* Fix crash with NeoForge ext creation

* Adapt SrgMerger into ForgeMappingsMerger

* Update tiny-remapper

* Fix spotless

* Resolve reviews

* Fix checkstyle

* Remap ASMAPI.redirectFieldToMethod (#171)

* Remap ASMAPI.redirectFieldToMethod

* Move lastClassName outside the if

* Fix missing template variables in tests using forge/simple

* Add Java version to forge/simple test variables

* Disable naming service dependency on Neo

* Fix changing patch version not affecting mapped game jars

Fixes #167.

* Rename configuration: neoforge -> neoForge

---------

Co-authored-by: shedaniel <daniel@shedaniel.me>
2023-11-17 16:04:22 +02:00
modmuss50
a60928ab28 Start on 1.5 2023-11-02 19:21:52 +00:00
Juuz
8403d42403 Use version catalog for Forge support dependencies 2023-10-31 00:29:25 +02:00
Juuz
95dfd29ac9 Remove unused lorenz-asm dependency 2023-10-31 00:20:51 +02:00
shedaniel
2df02d16c6 Fix spotless 2023-10-13 18:09:04 +08:00
shedaniel
f9f275d377 Fix compilation errors 2023-09-23 16:38:09 +08:00
shedaniel
649bbcaf55 Merge remote-tracking branch 'upstream/exp/1.4' into exp/1.4
# Conflicts:
#	.gitignore
#	build.gradle
#	settings.gradle
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/configuration/LoomConfigurations.java
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionApiImpl.java
#	src/main/java/net/fabricmc/loom/task/service/JarManifestService.java
#	src/main/java/net/fabricmc/loom/task/service/TinyRemapperService.java
#	src/main/java/net/fabricmc/loom/util/Constants.java
2023-09-23 16:11:29 +08:00
modmuss
71b7bea854 Support the Vineflower decompiler (#951) 2023-09-11 11:29:01 +01:00
modmuss
3a090917ff Update to Gradle 8.3, and update all other deps. (#946)
* Update to Gradle 8.3, and update all other deps.

* Fix tests

* Lazily download decompilers, generate version constants to ensure they are synced between the build and Gradle.

Each decompiler has a configuration, this allows the version to be changed at a later date if needed.

* Fix typo :)

* Oh so many versions
2023-08-24 10:18:25 +01:00
modmuss50
fc9041a071 Start on Loom 1.4 2023-08-22 22:52:10 +01:00
Juuz
f51a9a59de Merge remote-tracking branch 'upstream/dev/1.3' into dev/1.3
# Conflicts:
#	src/main/java/net/fabricmc/loom/build/nesting/IncludedJarFactory.java
2023-07-19 12:56:27 +03:00
Juuz
2de23d12cf Update TR and fix compilation errors 2023-07-19 12:14:34 +03:00
modmuss50
cfe72b933a Improve Kotlin version detection 2023-07-06 13:06:07 +01:00
Juuz
60e0aaf823 Merge remote-tracking branch 'upstream/dev/1.3' into dev/1.3
# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/AbstractMappedMinecraftProvider.java
2023-06-30 16:23:49 +03:00
modmuss
a2b541818c Apply AW as a TR AnalyzeVisitor (#892)
* Apply AW as a TR AnalyzeVisitor

* Update TR
2023-06-23 15:29:24 +01:00
Juuz
13cfbb9da5 Merge remote-tracking branch 'upstream/exp/1.3' into exp/1.3
# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/LoomGradleExtension.java
#	src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/decompile/SingleJarDecompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftJarConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/IntermediaryMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/NamedMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/task/GenerateSourcesTask.java
2023-06-21 21:40:25 +03:00
modmuss
4e593fc5ae Rework how unpick and linenumber maps are applied (#907)
This should hopefully vastly improve debugging, and more imporantly not work in a consistant manner, making debugging issues a lot easier.

This commit contains an intergration test that uses a real debugger to check that breakpoints are being fired as expected.
2023-06-16 21:55:04 +01:00
modmuss
856f0a4f33 Fix and validate kotlin version. (#903) 2023-06-13 18:31:02 +01:00
modmuss50
5c92ebd20b Loom 1.3 2023-06-13 11:10:08 +01:00
Juuz
915521cd23 Fix code style 2023-04-30 02:46:15 +03:00
Juuz
bf707bd5eb Disable FabricAPITest in CI since it never completes 2023-04-29 22:38:52 +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
89d09600c5 Rewrite Kotlin metadata remapping to support the latest kotlin metadata library. (#866) 2023-04-17 23:46:45 +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
95a260d923 Test against Gradle 8.1 and 8.2 nightly. (#846) 2023-04-16 17:19:21 +01:00