* Only validate loom version when mixins are to be remapped with TinyRemapper
* add tests
* change existing test to match new logic
* update "Valid loom version" test
* tabs for indentation, spaces for alignment
* fix more sneaky tabs
* Add SHA1 suffix to intermediaries
Having two or more different intermediaries for one version breaks; we use this to differentiate between intermediaries.
* Only add SHA1 to name if intermediary url is different from default
* Format code and remove duplicated method
* Enable configuration cache for all tests by default
* Support config cache in test projects
* Some config cache test fixes
* Config caching for run game tasks
* Problems for later
* More problems for later
* Bump min idea version, and remove version check.
* Untested client entries service
* Fixes
* Move everything to the new service system
* Checkstyle
* Fix unit tests + make them use the internet less
* Some more fixes
* Split the mixin ap mapping handling out into its own service.
* Checkstyle
* Fixes
* Move mixin refmap handling to a service
* Minor changes
* New service system for source jar remapping
* Remove the class generation, its too complex and useless.
* Fix
* Tests and cleanup
* Add basic SourceRemapperService test
* Skip file property tests on windows.
* Remap Forge dependency from mojang instead of srg
* Replace Union Relauncher with Bootstrap Dev
* Add mixins to forge 1206 test
* This should be forgelike
Why didn't this break unit tests?
* Replace with EnumMap
* Add version check for source roots separator
* Fix possible NPE
* Fix checkstyle in javadocs
such fun
* Fix codenarc styling
* fix usage
* remove hashcode and equals
* format code better
This fixes dep AT remapping on Forge 1.20.6+ - the filter
was choosing the wrong mapping option as it's only designed
for one extra namespace.
The optimisation isn't strictly needed. If it's added back
in the future, we need to make sure that ModProcessor gets
the full mapping tree.
This was leaving the broken "intermediary, named, official"
namespace order from layered mappings. While it could've been
fixed there, the optimised code path also lacked some fixes
to enclosing classes from MappingsMerger, so it's better to
use the "vanilla" code from Fabric.