Commit Graph

510 Commits

Author SHA1 Message Date
modmuss50
9286ef9163 Start 0.12 dev cycle 2022-01-28 20:25:14 +00:00
Juuz
b883c1a0cb Merge remote-tracking branch 'upstream/dev/0.11' into merge-0.11
# Conflicts:
#	src/main/java/net/fabricmc/loom/util/Constants.java
2022-01-21 17:28:05 +02:00
modmuss50
d8f070cc27 Reduce test memory in an effort to increase test stability. 2022-01-21 13:30:58 +00:00
Juuz
3f9f055c1c Remove custom version 2022-01-19 17:04:43 +02:00
Juuz
47cbcbcd36 This should be done now 2022-01-19 17:02:55 +02:00
Juuz
3e30defe71 Remove Blossom as it's not used anymore 2022-01-19 12:45:24 +02:00
modmuss50
54bf5480b7 Update tiny-remapper 2022-01-18 19:36:09 +00:00
Juuz
91656cfa50 A lot of 0.11 stuff but nowhere near done 2022-01-18 18:55:52 +02:00
Juuz
0f4c4bd087 Merge remote-tracking branch 'upstream/dev/0.11' into dev/0.11.0
# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/LoomGradleExtension.java
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/build/mixin/AnnotationProcessorInvoker.java
#	src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/DependencyProvider.java
#	src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/MappingsProviderImpl.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/intermediary/IntermediaryMappingLayer.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/intermediary/IntermediaryMappingsSpec.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftProvider.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/LoomTasks.java
#	src/main/java/net/fabricmc/loom/task/MigrateMappingsTask.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/task/ValidateAccessWidenerTask.java
#	src/main/java/net/fabricmc/loom/task/launch/GenerateDLIConfigTask.java
#	src/main/java/net/fabricmc/loom/task/service/MappingsService.java
#	src/main/java/net/fabricmc/loom/util/Checksum.java
#	src/main/java/net/fabricmc/loom/util/HashedDownloadUtil.java
#	src/test/resources/projects/kotlin/build.gradle.kts
2022-01-18 17:43:44 +02:00
modmuss50
d71af0cfd7 Kotlin metadata annotation remapping (#573)
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
2022-01-16 23:48:36 +00:00
modmuss50
d40241d75a Fix performance regressions in large multi-project builds. (#571)
* Perf improvements to multi-project builds.

* Fixes.

* More fixes.

* Layered mappings fixes

* Perf improvements. Undo broken fix.

* Fix remap classpath being empty.

* Another gradle bug? Either way this is fine and works.

* Fix broken test

* Final fixes?

* Fix and cleanup mixin ap mappings.
2022-01-14 19:50:45 +00:00
shedaniel
158185d374 Merge branch '0.11.0-interf' into dev/0.11.0
# Conflicts:
#	.github/workflows/test.yml
#	build.gradle
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/build/JarRemapper.java
#	src/main/java/net/fabricmc/loom/build/MixinRefmapHelper.java
#	src/main/java/net/fabricmc/loom/build/ModCompileRemapper.java
#	src/main/java/net/fabricmc/loom/build/mixin/AnnotationProcessorInvoker.java
#	src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/JarManifestConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/RemapConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/ide/RunConfig.java
#	src/main/java/net/fabricmc/loom/configuration/ide/SetupIntelijRunConfigs.java
#	src/main/java/net/fabricmc/loom/configuration/providers/LaunchProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/MinecraftProviderImpl.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java
#	src/main/java/net/fabricmc/loom/extension/MixinExtensionImpl.java
#	src/main/java/net/fabricmc/loom/task/LoomTasks.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/task/RemapSourcesJarTask.java
#	src/main/java/net/fabricmc/loom/util/Constants.java
#	src/test/groovy/net/fabricmc/loom/test/unit/layeredmappings/LayeredMappingSpecBuilderTest.groovy
2022-01-06 15:28:38 +08:00
modmuss50
6aa552bad0 Add task to download gradle sources next to the api jar. 2021-12-29 18:34:09 +00:00
modmuss50
e4244dc895 Remove idea-ext plugin, replace with 1 internal gradle api. Vastly improves import performance. 2021-12-20 16:54:03 +00:00
modmuss50
5a16440c1e Support ARM natives, rewrite native handling and misc cleanup. (#554)
* Rewrite natives handling, upgrade LWJGL on ARM machines.

* Remove old natives override hack, should now always be done via gradle.

* Use "idea" everywhere

* Add server specific libraries onto their own classpath. Includes misc code cleanup.

* Start on writing the excluded server libs.

* Gradle deprecation fixes, and misc cleanup

* Add support mod.

* Make native support mod none transitive.

* Update gradle.
2021-12-17 15:37:00 +00:00
shedaniel
6c781396a6 Merge remote-tracking branch 'architectury/dev/0.10.0' into dev/0.11.0 2021-12-09 01:15:27 +08:00
shedaniel
e00026ef46 Update TR
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-12-09 01:15:16 +08:00
shedaniel
67bc46a6b3 Merge remote-tracking branch 'FabricMC/exp/0.11' into dev/0.11.0
# Conflicts:
#	.github/workflows/publish.yml
#	.github/workflows/test.yml
#	bootstrap/test-project/build.gradle
#	build.gradle
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/extension/MinecraftGradleExtension.java
#	src/main/java/net/fabricmc/loom/util/Constants.java
2021-12-08 22:06:34 +08:00
shedaniel
261a42abde Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0
Signed-off-by: shedaniel <daniel@shedaniel.me>

# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
2021-12-08 21:55:57 +08:00
shedaniel
8e1006cde6 Update mercury
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-12-08 21:51:02 +08:00
modmuss50
337d17bb92 Java 17 and update libs. Closes #545 2021-12-04 19:00:47 +00:00
modmuss50
5ce9fde9b1 Start on 0.11 2021-12-04 14:10:12 +00:00
modmuss50
b550ca7857 Validate remapped mods also have a remapped access widener. (#549)
* Validate remapped mods also have a remapped access widener.

* Fix checkstyle
2021-12-02 18:59:47 +00:00
shedaniel
d51b44cdaa Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0
# Conflicts:
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/LayeredMappingSpecBuilderImpl.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/mojmap/MojangMappingLayer.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/mojmap/MojangMappingsSpec.java
#	src/test/groovy/net/fabricmc/loom/test/unit/layeredmappings/LayeredMappingSpecBuilderTest.groovy
2021-11-29 01:49:31 +08:00
modmuss50
7b28d61fab More improvements/fixes to shared caches maven publications + test improvements. 2021-11-25 14:49:17 +00:00
shedaniel
c412c11354 Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0
# Conflicts:
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/extension/MinecraftGradleExtension.java
2021-11-06 17:19:57 +08:00
modmuss50
d01c20f049 Update cfr 2021-10-30 23:41:19 +01:00
shedaniel
70d4a1d691 Forgot to commit fix merge conflicts
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-10-27 12:04:17 +08:00
shedaniel
b23636065e Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0
# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/configuration/ide/RunConfig.java
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/MappingsProviderImpl.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/util/FileSystemUtil.java
#	src/main/java/net/fabricmc/loom/util/TinyRemapperHelper.java
2021-10-26 21:16:40 +08:00
shedaniel
5c190cc3ef Use NIO instead of ZipUtil (#513)
* Use nio for zip utils

* Make tests work

* Please work

* Fix some issues with tests

* Fix more issues with tests

* NIOZipUtils -> ZipUtils

* Resolve Juuxel's reviews

* Use our own FS utils

* Improve error handling, add loom Pair

* Add Unit tests + fixes

Co-authored-by: modmuss50 <modmuss50@gmail.com>
2021-10-26 13:08:17 +01:00
modmuss50
640deecd96 Update access-widener 2021-10-24 18:57:29 +01:00
modmuss50
c380b36739 Update tiny-remapper and enable "inferNameFromSameLvIndex" to fix issues with decompiling some locals. 2021-10-14 17:04:40 +01:00
shedaniel
72295a8196 Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0
Signed-off-by: shedaniel <daniel@shedaniel.me>

# Conflicts:
#	.github/workflows/test.yml
#	src/main/java/net/fabricmc/loom/configuration/RemapConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/ide/RunConfig.java
#	src/main/java/net/fabricmc/loom/configuration/providers/MinecraftProviderImpl.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/assets/MinecraftAssetsProvider.java
#	src/main/java/net/fabricmc/loom/decompilers/fernflower/AbstractFernFlowerDecompiler.java
#	src/main/java/net/fabricmc/loom/decompilers/fernflower/ForkingJavaExec.java
#	src/main/java/net/fabricmc/loom/task/GenVsCodeProjectTask.java
#	src/main/java/net/fabricmc/loom/task/GenerateSourcesTask.java
#	src/main/java/net/fabricmc/loom/util/SourceRemapper.java
#	src/test/resources/projects/parchment/build.gradle
2021-10-13 15:13:02 +08:00
modmuss50
e2439b7f57 Rewrite GenSources including full support for CFR. (#511)
* 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
2021-10-11 13:47:16 +01:00
modmuss50
d57f61a38a Add very basic Migrate Mappings test, update lorenz-tiny to fix: https://github.com/FabricMC/fabric-loom/issues/510 2021-09-30 19:26:18 +01:00
shedaniel
474232e4bd Fix version being 0.0.0
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-09-25 20:48:49 +08:00
shedaniel
8216479edf Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0
Signed-off-by: shedaniel <daniel@shedaniel.me>

# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/util/TinyRemapperHelper.java
2021-09-19 02:53:31 +08:00
modmuss50
ae9a9e120d Update lorenz-tiny 2021-09-17 15:44:41 +01:00
modmuss50
2ec1dd032f Update tiny remapper, register the new LV pattern as invalid with TR. 2021-09-16 20:35:10 +01:00
shedaniel
eff1f8ba52 Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0
# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/LoomGradleExtension.java
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/configuration/accesswidener/AccessWidenerJarProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/LayeredMappingSpecBuilderImpl.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/MappingsProviderImpl.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/mojmap/MojangMappingLayer.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.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/extension/MinecraftGradleExtension.java
#	src/main/java/net/fabricmc/loom/task/MigrateMappingsTask.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/task/RemapSourcesJarTask.java
#	src/main/java/net/fabricmc/loom/util/SourceRemapper.java
#	src/main/java/net/fabricmc/loom/util/TinyRemapperMappingsHelper.java
#	src/test/groovy/net/fabricmc/loom/test/unit/layeredmappings/LayeredMappingSpecBuilderTest.groovy
2021-09-17 02:23:45 +08:00
modmuss50
9d9be1b842 Migrate fully to mapping-io + Add comments about transitive access widners to generated sources (#495)
* Add comments about transitive access widners to generated sources

* Migrate fully to mapping io

* Use release version of lorenz-tiny

* Review comment
2021-09-16 15:28:06 +01:00
shartte
d48c74161e Access Widener 2.0 with support for Transitive Access Wideners (#484)
* 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>
2021-09-14 22:40:47 +01:00
shedaniel
8bebf7d3ea Make test matrix recursive
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-09-12 03:52:53 +08:00
shedaniel
aad9582384 Fix some tests
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-09-12 03:06:21 +08:00
shedaniel
43dda4a6c8 Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/0.10.0 2021-09-12 03:02:32 +08:00
shedaniel
df7f56306b Fix ParchmentMappingLayerTest test (#491)
* Fix ParchmentMappingLayerTest test

* Update mapping-io

* Remove comment
2021-09-11 14:39:19 +01:00
shedaniel
aa4f1b107f Fix merge conflicts
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-09-11 04:54:58 +08:00
shedaniel
d06081d560 Merge remote-tracking branch 'FabricMC/dev/0.10' into dev/future
# Conflicts:
#	build.gradle
#	src/main/java/net/fabricmc/loom/LoomGradleExtension.java
#	src/main/java/net/fabricmc/loom/LoomRepositoryPlugin.java
#	src/main/java/net/fabricmc/loom/api/LoomGradleExtensionAPI.java
#	src/main/java/net/fabricmc/loom/build/MixinRefmapHelper.java
#	src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/MavenPublication.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionApiImpl.java
#	src/main/java/net/fabricmc/loom/extension/MinecraftGradleExtension.java
#	src/main/java/net/fabricmc/loom/extension/MixinExtensionImpl.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/util/Constants.java
#	src/main/java/net/fabricmc/loom/util/SourceRemapper.java
#	src/test/groovy/net/fabricmc/loom/test/util/ProjectTestTrait.groovy
2021-09-11 04:24:40 +08:00
shedaniel
3bc5ab25c0 Compile to J11
Signed-off-by: shedaniel <daniel@shedaniel.me>
2021-09-11 04:19:51 +08:00
modmuss50
1818ff03ab Update dependencies 2021-09-07 12:31:16 +01:00