* Rewrite CFR decompiler interface. Support javadoc
* CFR line numbers and fixes.
* Cleanup and fix
* Use WorkerExecutor to fork, massively cleans up the fernflower code, but does remove the fancy multithreaded logging.
* Use IPC to get logging back from the decompilers.
* Cleanup UnpickJarTask, fix leak in IPCServer
* Used published CFR build
* Handle older windows versions that do not support AF_UNIX.
* Fixes and basic unit test
* Improve memory handling of genSources
* Stop decompile worker JVM
Reads "extras/record_signatures.json" from mappings jar, just works with yarn.
Mojmap:
```
mappings loom.layered {
officialMojangMappings()
signatureFix("net.fabricmc🧶21w38a+build.9:v2")
}
```
* Support a wider range of parameters in FileSpec
Now supports
- all Providers (incl. Property)
- groovy template string literal (GString)
- Path and gradle FileSystemLocation
* Use the createFromFile overloads directly
* Use charsequence instead of (g)string
* Update src/main/java/net/fabricmc/loom/api/mappings/layered/spec/FileSpec.java
* Add comments about transitive access widners to generated sources
* Migrate fully to mapping io
* Use release version of lorenz-tiny
* Review comment
* Added global access widener support.
* Adapt loom to changed API of latest AW PR.
* Fix expected access widener to fix the test. Since the access widener is now streamed directly into the writer, the expanded rules (i.e. accessible field makes the owning class also accessible) are no longer found in the remapped file.
* Add basic transitive accesswidener test
* Extracted applying transitive access wideners into their own jar processor since they also need to be applied if there is no AW in the mod itself.
* Misc assortment of fixes
* Set up the processor lazily to allow for adding the intermediary MC jar, which is needed to correctly remap intermediary AWs to named.
* Rework to setup the tiny remapper classpath with the mc jar
Add an extension prop to disable
* Add TransitiveDetectorVisitor
* Minor refactoring.
* Use release-version of access-widener.
Co-authored-by: modmuss50 <modmuss50@gmail.com>
* use tiny-remapper 0.5.0
* add property of useLegacyMixinAp and rename mixin to mixinAp
* disable mixin ap if useLegacyMixinAp is false
* fix tests
* remove experimental for mixinAp
* enable mixin remapper
* revert changes on API
* rename MixinAp*** to Mixin***
* move useLegacyMixinAp inside MixinExtension
* cleaner code
* update test
Co-authored-by: modmuss50 <modmuss50@gmail.com>
* Add modCompileOnlyApi, modRuntimeOnly; deprecate modRuntime
* begin
* continue
* Make RemapSourcesJarTask use properties
* finish
* Remove cursed version hack 😉
* Finish for real
* Add missing header
* Clarify a comment
* Fix tests
* Use Gradle's own *Elements and remove -dev jars
* Fix maven test
* Put mappingsFinal onto runtimeClasspath instead of implementation
* Make non-mod dependencies work with the legacy pom magic too
* Be a bit more clever when removing dev artifacts
* Install and run a production server in tests
* Small improvements
* Add FabricAPI build test
Create new GradleProjectTestTrait replacing the old trait
Improve groovy code formatting.
* Refactor tests
* Fix MultiProjectTest + fix logging for fabric api test
* Cleanup and fixes
* Update fabric api + run in parallel for speed
* Set server memory + fix error
* Add mirrors util and mirror configuration
* Fix NPE in MirrorConfiguration;
Add constants in Constants;
Rename Mirrors.java to MirrorUtil.java
* Bump gradle nightly version
* Apply mirror to download assets.
Need fix settings in LoomRepositoryPlugin.java
* Fix MojangMappingsSpec having the same hash version for each mc version.
I dont think this would be a real cause for concern as the jar would have had the mc version in it anyway.
* Revert "Fix MojangMappingsSpec having the same hash version for each mc version."
This reverts commit 61fa4d9f
* Remove MirrorConfiguration and move to MirrorUtil
* StyleCheck.
* Fix "IllegalStateException: The root project is not yet available for build."
* Remove some of the extra content.
Co-authored-by: BreakIce <suibing112233@outlook.com>
Co-authored-by: modmuss50 <modmuss50@gmail.com>
* Re-enable Kotlin test because the related bug has been fixed
* Fix loom.accessWidener being a read-only property in Kotlin
* Remove Kotlin test exclusions
* Add versions used to compile/build against to jar manifest
* checkstyle
* Move to post remap
* Fix build
* Add mc version and mixin group
* Typo
* Make test run across versions better.
* ModProcessor: Add more descriptive error TR output error message
* Fix flatDir/files/fileTree mod dependencies
* Add clarifying comment
* Use hash as a placeholder version
* ProjectTestTrait: Copy instead of reading and writing text
This allows having jars and other binary data in tests.
* Add integration test for local file dependencies
* Use File.bytes instead of Files.copy
* Use truncated SHA256 instead of murmur3
* Remove unused codepath (`RemapJarTask` is an `AbstractArchiveTask`)
* Remove incorrect comment
Comment originally added in 02e9616622
* Add classifier to `DependencyInfo`
* Add classifier to generated mod ID
* Clean up code structure from review
Co-authored-by: haykam821 <haykam821@users.noreply.github.com>
* Inline `file` local variable
Co-authored-by: haykam821 <haykam821@users.noreply.github.com>
Co-authored-by: haykam821 <haykam821@users.noreply.github.com>
* move repo declartions
- Move repository declartions in MavenConfiguration.java to LoomRepositoryPlugin.java
* move repo declartions
- Move repository declartions in MinecraftMappedProvider.java to LoomRepositoryPlugin.java
* move repo declartions
- Move repository declarations in MinecraftProcessedProvider.java to LoomRepositoryPlugin.java
* do not add repositories if dependencyResolutionManagement is used
* Simplify the change on LoomGradlePlugin
- this is the suggestion from liach
* change name to follow fabric naming convension
- change getProjectUUID to getProjectUuid
- change PROJECT_MAPPED_CLASSIFIER to projectMappedClassifier
* remove MavenConfiguration.java
- the file currently do nothing.
* clean-up for all `instanceof` clause
* add DependencyResolutionManagementTest
* code cleanup
* Update src/test/resources/projects/dependencyResolutionManagement/projmap/src/main/resources/modid.accesswidener
* change project uuid to project full name
Co-authored-by: modmuss50 <modmuss50@gmail.com>