Commit Graph

1406 Commits

Author SHA1 Message Date
modmuss
87adb207b4 Fix XVFB run not evaluating arg providers (#1464) 2025-12-05 17:18:07 +00:00
modmuss
81d3f1d97c Skip synthetic parameter fix on non-obfuscated classes. (#1463)
* Skip synthetic parameter fixes on obfuscated classes.

This only applies to classes that proguard renamed.

* Keep it simple
2025-12-05 09:09:03 +00:00
modmuss
a13f004d14 Adjust plugin ids (#1461) 2025-12-02 11:00:17 +00:00
modmuss
6b6414a34d Track gen sources task (#1460) 2025-12-01 22:40:14 +00:00
modmuss
ed0587df70 Use Gradle testfixtures.ProjectBuilder to create a Project for the unit tests (#1458)
* Use Gradle testfixtures.ProjectBuilder to create a Project for the unit tests

* Cleanup
2025-11-29 07:53:24 +00:00
modmuss
bfabf091f6 Add unobf Fabric API test (#1456) 2025-11-24 23:28:48 +00:00
modmuss
93e3064fac Disable jar verification by default (#1454)
* Disable jar verification by default

* Delete invalid jars

* Fix?

* Fix?
2025-11-24 22:45:02 +00:00
modmuss
e612fda6b9 Add external classpath groups as explicit test task inputs. (#1453) 2025-11-21 20:39:21 +00:00
ishland
45d8dda275 Dev-only remapping for unobfuscated versions (#1452)
* fix: intermediary name leakage

* new: simple dev-only remap tests

* fix: checkstyle

* change: minimize intermediary mapping for 25w46a_unobfuscated

* change: remove dedicated package

* change: split the loop for mapping cleanup

* fix: checkstyle
2025-11-19 20:31:38 +00:00
opekope2
1a890a6db3 Enable the usage of JSR annotations (#1420)
* Add option to disable remapping JSR annotations

* Move JSR annotation remapping to a JAR processor

* Organize imports

* Remap JetBrains annotations back to JSR when configured

* Fix indentation

* Rename useJsrAnnotations

Rename it to remapJsrAnnotationsToJetBrains to make clear what Loom does

* Update JSR annotation remapper exception message

* Add integration test

* Document remapJsrAnnotationsToJetBrains

* Fix javadoc format

* Checkstyle fix

---------

Co-authored-by: modmuss50 <modmuss50@gmail.com>
2025-11-18 20:28:05 +00:00
ishland
dedbf8fa8f Introduce loom.productionNamespace (#1447)
* new: loom.productionNamespace

* change: move getProductionNamespaceEnum to LoomGradleExtension

* change: use .convention() for productionNamespace default

* change: productionNamespace.finalizeValueOnRead()

* fix: checkstyle
2025-11-18 18:23:55 +00:00
modmuss50
2deeda4c70 Fix Min Gradle version being applied to the wrong config.
Closes #1448
2025-11-18 18:01:58 +00:00
Ellie McQuinn
408ff16767 Add simple utility method for defining an entrypoint with a language adapter (#1451) 2025-11-17 19:19:55 +00:00
Finn Rades
10802d5424 Tracy support for all run tasks (#1444)
* Rework tracy support to work with all run tasks

* Let user properly configure tracy
2025-11-11 15:18:51 +00:00
modmuss
f5df6dc87e JSpecify, package-info's and misc null fixes. (#1443)
* jspecify

* Null fixes + package infos

* Unit test fixes
2025-11-10 09:42:51 +00:00
modmuss
f15ff90bfc Update to Gradle 9.2 (#1441)
* Update to Gradle 9

* Some test fixes

* Only test current + nightly again

* Fix unit tests

* Update Kotlin in tests

* Back to J21 for most tests for now
2025-11-09 21:04:38 +00:00
modmuss
ec236a34bd Remove -experimental from loom-no-remap (#1440) 2025-11-09 15:33:08 +00:00
Finn Rades
84d6d87650 Optimize DeobfSpecContext by scanning configurations individually (#1439)
* Optimize DeobfSpecContext by scanning configurations individually

Previously, DeobfSpecContext used getFullClasspath().getFiles() which
resolved the union of all configurations at once. This was extremely
slow (~9.8s with FAPI).

* Cleanup

* Cleanup

* Cleanup
2025-11-09 14:13:00 +00:00
modmuss50
739e124f26 CharsetEncoder is not thread safe. 2025-11-09 14:00:42 +00:00
Finn Rades
1a70c3703b Add XVFB support for headless client execution (#1432)
* Implement XVFB support

* Remove unused import

* Fix test

* Fix test v2

* Explicitly install xvfb into the test environment

* Rework xfvb execution

* Fix compile error

* Fix compile error v2

* We love testing with github ci

* Fix code-style
Build time speedup

* Build time speedup

* Fix java executable access
Fix caching

* Fix styling

* Fix xvfb again

* Fix xvfb again again

* Fix xvfb again again again

* Revert mistaken change

* Fix MC-DEV

* Update src/test/groovy/net/fabricmc/loom/test/integration/XvfbRunTest.groovy

Co-authored-by: modmuss <modmuss50@gmail.com>

* Cleanup

* Fix test

* Implement recommendations

* Implement recommendations v2

* Fix left over code

---------

Co-authored-by: modmuss <modmuss50@gmail.com>
2025-11-09 10:44:31 +00:00
modmuss
91d2edefbf NestJarsAction improvements (#1438) 2025-11-09 10:40:18 +00:00
modmuss
9ad97b74b9 Fix project deps (#1437) 2025-11-09 09:45:21 +00:00
modmuss
549edb7ad9 Remove "namedElements" when debof (#1435) 2025-11-08 23:20:06 +00:00
modmuss
03d4fd077b Very many debof fixes (#1430) 2025-11-08 09:04:40 +00:00
Finn Rades
f9dbaae926 Add manifest attributes and jar filtering to non-remapped jar task (#1429)
* Add manifest attributes and jar filtering to non-remapped jar task

* Fix checkstyle

* Implement feedback
2025-11-07 22:40:08 +00:00
modmuss
43e1ad7b31 Disable remap classpath system prop (#1426)
* Disable remap classpath system prop

* Fix build
2025-11-07 22:07:13 +00:00
modmuss
ec00261136 Find and apply installer data (#1428) 2025-11-07 21:54:51 +00:00
Finn Rades
eca987a2d3 Add nestJars API for nesting locally built mod jars (#1427)
* Add nestJars API for FileCollection support

* Add missin new-line

* Fix imports

* Rework constructor to avoid ugliness

* Update java docs

* Update java docs

* Implement asked improvements

* Fix checkstyle
2025-11-07 21:06:07 +00:00
modmuss50
6877f704a0 Move IncludedJarsNoRemapTest 2025-11-07 19:12:47 +00:00
Finn Rades
3a2a67bffe [Non-Obf]: Support JIJ with the regular jar task (#1425)
* Implement JIJ for jar task

* Implement JIJ for jar task, now without beeing a dumbass

* Reimplement old task, decouple

* reimplement last missing functionality

* fix checkstyle

* fix checkstyle v2

* fix checkstyle v3

* Remove dead / unneccesary check

* Cleanup / Code-Style

* Cleanup / Code-Style v2
2025-11-07 19:10:28 +00:00
modmuss
e50fce87cc Debof spec context (#1424)
* Ahhhhh

* Injected interfaces working

* Access wideners working
2025-11-07 19:04:50 +00:00
modmuss
48f7aa66fb Test compiling against the unobfuscated version. (#1423) 2025-11-05 13:49:09 +00:00
modmuss
8f40c6cb47 Create fabric-loom-no-remap plugin (#1417)
* Create fabric-loom-no-remap plugin

* Better

* Don't need the property

* Rename
2025-11-05 13:01:52 +00:00
modmuss50
5e5d9b8d0e Start on Loom 1.14 2025-11-05 13:01:25 +00:00
modmuss50
43023dc3b8 Update unpick 2025-11-03 15:10:25 +00:00
Juuz
5d59759a89 AbstractRemapJarTask: Fix manifests not being inherited (#1421)
* AbstractRemapJarTask: Fix manifests not being inherited

* Copy manifest before applying manifest service

This matches the original ordering of the manifest creation,
and fixes the override functionality in the service.

* Test merging named sections
2025-11-03 14:55:07 +00:00
modmuss50
94d4eb6e08 Update Mercury Mixin 2025-11-03 09:44:45 +00:00
Julian Burner
224d015c22 Update to Mapping-IO 0.8.0 (#1419) 2025-11-03 09:27:59 +00:00
Juuz
a0d73dc3b7 Add task to migrate CT/AW mappings (#1412)
* Add task to migrate CT/AW mappings

* Remove unused logger

* Add option to map CT in place, add common base class

* Add test for migrating AW/CT mappings

* Add SkipWhenEmpty to MigrateClassTweakerMappingsTask.inputFile

* Split CT migration service from base service
2025-11-02 13:12:56 +00:00
modmuss
e41982c51e Migrate mapping improvements. (#1416)
* Migrate mapping improvements.

* Revert to old logic

* Fix

* Add --overrideInputsIHaveABackup

* Skip task when input is empty

* Fix again

* Update MM
2025-11-01 08:25:46 +00:00
modmuss50
2e16a97f08 Merge remote-tracking branch 'origin/dev/1.12' into exp/1.13 2025-10-31 22:31:51 +00:00
Juuz
4fb75cf336 Include source mapping hash in decompiler cache key (#1414)
* Include source mapping hash in decompiler cache key

Fixes #1410.

* Mark source mappings hash property as optional, improve name
2025-10-31 21:38:25 +00:00
modmuss
0e2fc99eb1 Add back getModSourceSets(), as its used by mc dev to do nothing. (#1415) 2025-10-31 21:34:31 +00:00
modmuss50
f7321abfd5 Fix ordering of mercury processors 2025-10-31 14:52:24 +00:00
modmuss
1f1448fd19 Add mercury mixin to migrate mappings task. (#1413) 2025-10-31 13:16:27 +00:00
modmuss50
3575bf3715 Merge remote-tracking branch 'origin/dev/1.12' into exp/1.13 2025-10-31 11:52:47 +00:00
Juuz
f8a465377c Fix using Enigma mappings with mod-provided javadoc (#1411)
- Fixes using formats with inherently multiple namespaces
  by actually only checking for the presence of dst names
  instead of dst namespaces.
- Fixes using formats without namespace ids by replacing
  the fallback namespaces with intermediary and named.
2025-10-31 11:52:23 +00:00
modmuss
577e5c8bfd Add 'fabric.loom.disableObfuscation' property to disable all remapping. (#1409)
* Add 'fabric.loom.disableObfuscation' property

* More work, the test passes now.

* Fix
2025-10-30 20:11:52 +00:00
Juuz
5892364fdf Make remapping tasks use the archive file from the Jar API (#1406)
* Make remapping tasks use the archive file from the Jar API

Other minor changes:
- Exception messages now include the absolute path of
  the jar file
- RemapSourcesJarTask now also uses descriptive wrappers
  instead of a direct new RuntimeException(...)

* Stop overriding Jar.copy with a no-op

* Add test for using Jar's API on remapJar and remapSourcesJar
2025-10-30 20:10:47 +00:00
feenko
04995cbcf9 Fix FMJ generator not resolving dependencies correctly with exactly one version range (#1408) 2025-10-30 15:54:17 +00:00