It uses multibindings to allow additional Jackson modules to be
registered across different Guice modules while using a single
ObjectMapper for the whole application.
Signed-off-by: Graham <gpe@openrs2.dev>
Local variable name tracking with the @Pc annotation relies on changes
not yet included in a release. I'm not intending to do another
Fernflower release yet, as I've still got more changes to make, but I
would like the @Pc tracking to work.
Signed-off-by: Graham <gpe@openrs2.dev>
This reverts commit 7415ae6ec9.
The problems that caused me to write this commit in the first place have
been fixed. Using IDEA's test runner directly is nicer - e.g. for code
coverage integration.
Java 11's Pack200 implementation complains if stack map frames are present, and
passes the classes through unmodified. I'm not sure why.
Stack map frames are only required in Java 7, so for 6 and below a reasonable
workaround is to not emit them.
A nice side effect of this change is that the jar files created by the bundler
are be smaller. The pack200 files are too, and would be even if the classes
were not passed through unmodified.
I'm ignoring the deobfuscator mapping files for now, but when the
deobfuscator is finished then I'll add them to the repository and keep
them up to date.
Signed-off-by: Graham <gpe@openrs2.dev>
The next commit will make MemberRef comparable, with the owner/name
being used for sorting before the descriptor. This makes the output of
the fields consistent with the sort order.
Signed-off-by: Graham <gpe@openrs2.dev>
Now we don't use Maven, the dev.openrs2:openrs2 Maven coordinates are
available for use. I think using them for the end-user application
packaged as a .zip file is reasonable.
I don't intend to move the all submodule to the root build.gradle.kts
file, as this would cause us to lose some of the benefits of supporting
Gradle configuration on demand.
Signed-off-by: Graham <gpe@openrs2.dev>
Fixes#99, which was caused by a method call in an unused method with a
non-constant dummy argument. This prevented the argument being removed,
but it wasn't obvious why as the method preventing the argument removal
was also removed.