Commit graph

751 commits

Author SHA1 Message Date
modmuss50
60c908ea1b Fix duplicate comments about transitive access wideners. Fixes #544
A more sophisticated fix might be nice, but im not sure it will provide a lot of benefit.
2021-11-25 18:53:04 +00:00
modmuss50
7b28d61fab
More improvements/fixes to shared caches maven publications + test improvements. 2021-11-25 14:49:17 +00:00
Juuxel
9ddff5f31a
Fix gradle module metadatas not including api deps in runtimeElements (#540) 2021-11-23 18:35:08 +00:00
modmuss50
babbc55586
Add an option (enabled by default) to map synthetic field and method names from the official mojang mappings. (#538) 2021-11-20 21:46:33 +00:00
modmuss50
9c2b1e8d6d Fix access widener file hashcode calculation breaking caching.
When using transitive access wideners the mc jar would always be re-processed.
2021-11-17 15:30:23 +00:00
modmuss50
dd7882598e Add getBaseMappedJar to make it easier to get the pre-transformed game jar. 2021-11-15 13:42:07 +00:00
modmuss50
35afda4398
Fix namedElements not extending from api (#533)
* Fix `namedElements` not extending from api
Fix artifact not waiting for remapAllJars with shared caches

* Use apiElements

* Add a better test for this.

* Also add remapped api mods to namedElements
2021-11-12 10:46:23 +00:00
modmuss50
2994c2d488 Fix for 1.18-pre1 server bundler.
In the bundler its called 1.18 Pre-release 1 not 1.18-pre1, so we just assume there is only ever going to be 1 version per jar.
2021-11-11 18:28:15 +00:00
modmuss50
e2b4bc8985 Reduce log level of "Using project based jar storage".
This will be used on a lot more projects now as transitive access wideners becomes more widely used.
2021-11-10 17:42:41 +00:00
modmuss50
ba4b9289e2 Ensure that the encoding is set to UTF-8 2021-11-10 14:23:32 +00:00
modmuss50
b2228e3175
Fix unobfuscated names not having params or docs. (#532) 2021-11-09 22:07:43 +00:00
modmuss50
cb5c009e1a Fix missing blank line between javadoc and params 2021-11-01 18:30:42 +00:00
Cat Core
a91b75c05c
Allow to set custom intermediary url again (#528)
* allow to set custom intermediary url again

* apply suggestions

* add some javadoc
2021-11-01 15:47:28 +00:00
modmuss50
5f379e4f42
Make CFR the default decompiler (#527)
* Make CFR the default decompiler
Expose decompiler options

* Remove convention, default value is an empty map.

* Checkstyle..
2021-11-01 13:43:03 +00:00
modmuss50
d01c20f049 Update cfr 2021-10-30 23:41:19 +01:00
Juuxel
587db4abae
Add localRuntime and modLocalRuntime configurations (#526)
Closes #481.

Co-authored-by: modmuss50 <modmuss50@gmail.com>
2021-10-29 22:26:59 +01:00
modmuss50
e409f13b8c
Add dev config with default jar task on it, to aid with depending on … (#525)
* Add dev config with default jar task on it, to aid with depending on sub projects.

* Rename to `namedElements`

* Update src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java

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

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
2021-10-29 13:29:29 +01:00
modmuss50
177264420e Fix misleading error message when decompiling fails. 2021-10-28 18:15:59 +01: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
b7142ae468 Ensure path exists when loading transitive access wideners. 2021-10-25 18:13:28 +01:00
modmuss50
13f4b29d12 Alter TransitiveAccessWidenerJarProcessor to use the same logic used in ModCompileRemapper for resolving mod jars. 2021-10-25 16:34:06 +01:00
modmuss50
640deecd96 Update access-widener 2021-10-24 18:57:29 +01:00
modmuss50
61b5cfa733
Improve run config argument handling, should work with spaces a bit better. (#524) 2021-10-24 14:11:01 +01:00
modmuss50
7359dc4e98 Enable META-INF fixer when remapping mods. 2021-10-24 13:05:42 +01:00
modmuss50
a10307464e
Add AccessWidenerValidator (#518)
* Add AccessWidenerValidator

* Move to task

* Review feedback
2021-10-23 15:04:22 +01:00
modmuss50
0248bacc16 Forward stdin in AbstractRunTask. Fixes begin unable to run server commands. 2021-10-20 23:12:49 +01:00
modmuss50
2b9907e0f0 Fix mappings not begin on test runtime classpath. 2021-10-16 22:20:27 +01:00
modmuss50
0864e0a671 Ensure decompiler worker deamons are stopped after failure. 2021-10-15 22:30:27 +01:00
modmuss50
d834895ff2 Fix null related issues in CFRObfuscationMapping 2021-10-14 18:14:23 +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
modmuss50
d8675e056b Don't allow none reproducible dependencies in layered mappings as it breaks the caching guarantee. 2021-10-12 16:11:44 +01:00
modmuss50
6666b95b54 Fix mod* configurations not being on the test compile/runtime configuration. Closes #488 2021-10-12 13:31:12 +01:00
Juuxel
1c208f99b4
Fix regression in TinyJavadocProvider (#516)
This was param.getName using tiny-mappings-parser before #495. It was writing the method name as the parameter name, which doesn't seem too correct...
2021-10-11 21:31:59 +01: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
5315d3c5b2
Run tests against Java 17 (#515)
* Run tests against Java 17

* Fix tests on J17
2021-10-09 11:05:38 +01:00
NinjaPhenix
e55763aca2
Use conventions in RemapConfiguration to avoid need for afterEvaluate. (#514) 2021-10-04 21:37:48 +01:00
modmuss50
ce0a3308ff Make Run Config run dir relative to the project and not the root project. Move eclipse launch config files out of the root project. Closes #509 2021-09-30 19:59:46 +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
modmuss50
782344ac59 Fix crash in JarProcessorManager when the input jar does not have a manifest. 2021-09-29 19:44:26 +01:00
modmuss50
da66abfaef Support 21w39a 2021-09-29 19:33:04 +01:00
modmuss50
f33637aa3c Improve error handling around dep remapping. 2021-09-28 17:22:13 +01:00
modmuss50
80ad300b97 Fix failure when running dependencies task when using layered mappings.
A SelfResolvingDependency has to be a FileCollectionDependency or a ModuleDependency by the looks of it.
2021-09-28 16:34:43 +01:00
shedaniel
c6f51f1dd2
Add -Dloom.refresh=true option (#508)
* Add -Dloom.refresh=true option

* Use Boolean.getBoolean
2021-09-28 12:18:08 +01:00
modmuss50
676a498e0c
Fix record signatures based on data provided by mappings. (#507)
Reads "extras/record_signatures.json" from mappings jar, just works with yarn.

Mojmap:

```
mappings loom.layered {
   officialMojangMappings()
   signatureFix("net.fabricmc🧶21w38a+build.9:v2")
}
```
2021-09-28 10:38:11 +01:00
Juuxel
7d2dad6e46
Support a wider range of parameters in FileSpec (#502)
* 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
2021-09-22 22:00:41 +01:00
shedaniel
be17a02e90
Use better gradle conventions, and fix #311 (#503)
* Use better gradle conventions, and fix #311

* Fix checkstyle

* Revert some changes

* Use convention

* Remove set classpath
2021-09-22 21:59:51 +01:00
modmuss50
06e60e5c29
Enable legacy mixin ap by default (#501) 2021-09-20 17:44:08 +01:00
modmuss50
1752659291 Dont add loom to compileOnly config.
I dont think this has been required since MCE is a thing.
2021-09-20 13:05:45 +01:00
modmuss50
256e61ce3c
Rebuild record components from field names, improves decompile (#497) 2021-09-19 08:53:13 +01:00
shartte
98d8f37672
Fixes merging of mappings for cases like: class_1234 is mapped, but class_1234$1 is not. (#498) 2021-09-18 21:15:32 +01:00