Commit Graph

1508 Commits

Author SHA1 Message Date
Juuz
7c08c02796 ModPlatform: Introduce display name 2023-11-17 16:24:16 +02:00
Juuz
ad7eee6fa5 ModProcessor: Clean up with MappingOption.forNamespaces 2023-11-17 16:19:52 +02: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
shedaniel
e3b51e9e97 Fix Field Migration (#168)
* Fix #162

* Refactor some field migrator code
2023-11-13 14:52:02 +08:00
shedaniel
683a866284 Fix dependencies not being remapped with srg 2023-11-12 22:02:42 +08:00
shedaniel
31147018be Publish 1.4 beta builds 2023-10-24 11:23:40 +08:00
shedaniel
48c39617c5 Support newer versions of MinecraftForge 1.20.2. (#164)
* Support newer versions of MinecraftForge 1.20.2.

* Add directly to settings.getEnvironmentVariables()
2023-10-24 11:22:38 +08:00
shedaniel
c8599e7f66 Merge remote-tracking branch 'upstream/dev/1.4' into dev/1.4 2023-10-24 11:19:58 +08:00
modmuss
7106441298 Fix extending the client/datagen compile/runtime classpath from main (#967) 2023-10-22 13:52:17 +01:00
Juuz
65920d3958 Merge branch 'dev/1.3' into exp/1.4 2023-10-20 14:22:43 +03:00
Juuz
b6354a06ef Update more generated system properties for Quilt Loader 2023-10-20 14:21:52 +03:00
modmuss50
39841d8dc0 Revert "Fix server only jar, closes #966"
This reverts commit eb0c45956b.
2023-10-16 18:57:31 +01:00
modmuss50
eb0c45956b Fix server only jar, closes #966 2023-10-16 16:20:43 +01:00
modmuss
a6534adeaf Fix runtime crash on Intel Mac's when LWJGL has been updated. Closes #963 (#964) 2023-10-16 16:20:43 +01:00
modmuss
8c7c14e922 Add fabricApi.configureDataGeneration API/DSL to help with setting up data generation. (#960)
* Add fabricApi.configureDataGeneration API/DSL to help with setting up datageneration.

* Clean + add option to not add to resources

* Dont create new task
2023-10-16 16:20:43 +01:00
haykam821
78a903d2c9 Sort extra manifest attributes (#958) 2023-10-16 16:20:43 +01:00
modmuss
46e27ce1ba Rename .jnilib natives to .dylib (#956) 2023-10-16 16:20:43 +01:00
shedaniel
4af46aa67c Merge remote-tracking branch 'upstream/exp/1.4' into exp/1.4
# Conflicts:
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/ProcessedNamedMinecraftProvider.java
2023-10-12 22:09:40 +08:00
embeddedt
b7c80133ce Use hash of cache value as the JAR name for processed Minecraft JARs (#944)
* Use hash of cache value as the JAR name for processed Minecraft JARs

In basic testing, this cuts down the number of JARs to just one
provided the same AWs are used on all subprojects

* Fix checkstyle

* Remove redundant code

* Fix mod javadoc caching, and fixup tests.

* Hopefully fix ModJavadocTest on windows.

---------

Co-authored-by: modmuss <modmuss50@gmail.com>
2023-09-25 22:44:31 +01: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
shedaniel
54f252f6b5 Remove beta warning 2023-09-23 15:59:30 +08:00
shedaniel
ec6b2b0392 Merge remote-tracking branch 'origin/dev/1.2' into dev/1.3 2023-09-23 15:53:45 +08:00
modmuss
bd09af1783 Downloader: Protect against partially downloaded files. (#954)
* Downloader: Protect against partially downloaded files.

* Cleanup

* Add 1 minute timeout.

* Checkstyle
2023-09-22 18:55:44 +01:00
modmuss50
0b36121357 Add Fabric-Jar-Type to jar manifest.
Either 'classes' or 'sources', the idea is mod distribution platforms can check that sources jars are not uploaded accidentally.

Closes #939
2023-09-11 11:47:19 +01:00
modmuss
1a4f76584f Fix reproducable zips across timezones. (#952)
* Create test for zip timezones

* Fix :)

* Update ReproducibleBuildTest

* Update windows hashes
2023-09-11 11:31:10 +01:00
modmuss
71b7bea854 Support the Vineflower decompiler (#951) 2023-09-11 11:29:01 +01:00
modmuss
0a3779f41d Fix and test FabricApiExtension not supporting deprecated modules. (#950) 2023-09-09 22:37:02 +01:00
modmuss
e924faf44e Support reading "development" dependencies from the installer json. (#949)
* Support reading "development" dependencies from the installer json.

* Fix checkstyle and comment.
2023-09-09 22:36:51 +01:00
modmuss50
4caf4f831e Sort client only entries, fixes #940 2023-09-09 17:31:43 +01:00
modmuss
ae159dd126 Support Zip.getEntryCompression() setting (#936)
* Support Zip.getEntryCompression() setting

* Checkstyle

* Set for both the entry and ZOS
2023-09-09 13:21:43 +01:00
Luke Bemish
0dc2d67317 Add extension option to configure known INVOKEDYNAMIC BSMs (#945)
* Set up configuration for known indy bsms

* Make ignoredIndyBsms apply to service remapper

* Add groovy indy instruction to default known BSMs

* Address feedback

---------

Co-authored-by: modmuss <modmuss50@gmail.com>
2023-09-09 13:21:14 +01:00
shedaniel
fce31a4f1d Delete forge mods' jarjar metadata (#159)
* Delete forge mods' jarjar metadata

* Update ZipUtils.java

* Update src/main/java/net/fabricmc/loom/util/ZipUtils.java

Co-authored-by: Juuz <6596629+Juuxel@users.noreply.github.com>

---------

Co-authored-by: Juuz <6596629+Juuxel@users.noreply.github.com>
2023-09-05 03:30:13 +08:00
SettingDust
2b64c2f803 fix: missing a patch for #153 that c29090037f change the method name (#156) 2023-08-27 14:26:06 +03: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
SettingDust
25eefb5d62 Make all jars nestable on Forge (#153)
Fixes #152.
2023-08-12 23:09:40 +03:00
Juuz
66edc601f5 RemapJarTask: Avoid reordering nested jars
Fixes #155.
2023-08-12 13:02:57 +03:00
Juuz
b0840803a5 Add a mod settings container to RunConfigSettings (#145)
Closes #144.
2023-08-12 12:41:27 +03:00
Juuz
39426ac20e Merge remote-tracking branch 'upstream/dev/1.3' into dev/1.3 2023-08-12 01:22:31 +03:00
Juuz
65bb884401 Merge branch 'dev/1.2' into dev/1.3 2023-08-12 01:22:09 +03:00
modmuss
ffc786d3cd Fix gradle properties not being read from sub projects correctly. (#941)
Workaround gradle/gradle#23572
2023-08-10 16:46:25 +01:00
shedaniel
7a26b375e0 Support Neo (#154) 2023-08-09 04:41:58 +08:00
Juuz
3019b32fd7 Publish 1.3 beta builds 2023-07-22 01:30:02 +03: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
modmuss50
63eaeed496 Add comment to ZipReprocessorUtil.appendZipEntry 2023-07-04 17:15:54 +01:00
modmuss
e49a051ea0 Fix included none mod libraries not being reproducible. (#923)
Closes #921
2023-07-04 17:13:48 +01:00
modmuss
6413a9312c Create RunConfigSettings with Gradle's object factory (#917)
* Create RunConfigSettings with Gradle's object factory

* Update src/main/java/net/fabricmc/loom/configuration/ide/RunConfigSettings.java

Co-authored-by: Juuz <6596629+Juuxel@users.noreply.github.com>

* Update FabricAPI test

* Fix version

* Actually fix test

* Just make the minimal changes for now

---------

Co-authored-by: Juuz <6596629+Juuxel@users.noreply.github.com>
2023-07-03 17:45:13 +01:00
modmuss
8ddf572a7c Client annotation processor configuration extendsFrom "annotationProcessor" (#918) 2023-07-02 21:39:06 +01:00