Graham
3be031e6b1
Strip trailing whitespace from README.md
5 years ago
Graham
d34b1e7e72
Combine analyze and getFrames
5 years ago
Graham
28369f1d75
Add UnusedArgTransformer
5 years ago
Graham
d20e3997b4
Split transformMethod into {pre,post}TransformMethod
5 years ago
Graham
145ed6b1ee
Add classPath and library arguments to all Transformer methods
5 years ago
Graham
46ab5111e6
Add isMethodImmutable method to TypedRemapper
...
I'm going to use this in a new Transformer.
5 years ago
Graham
b7347b2632
Move ArgRef to the top level
...
I'm going to use it in another Transformer.
5 years ago
Graham
bb2f72c4f0
Add ConstSourceInterpreter
...
It is akin to SourceInterpreter, but more efficient as it only tracks
the sources of integer constants and it doesn't track sources through
copy instructions.
5 years ago
Graham
71d1b8d435
Update Guava
5 years ago
Graham
7c63254440
Document why our ChoosePixelFormat usage is correct
5 years ago
Graham
f426f16d72
Simplify DummyLocalTransformer
...
The obfuscated client only contains dummy locals of type int.
5 years ago
Graham
5e46c058cd
Improve structuring of if/else chains ending in a throw or return
5 years ago
Graham
261cc87125
Add CachePathTransformer
5 years ago
Graham
4788f8314e
Clear ClassPath cache after remapping
5 years ago
Graham
6e750b008f
Replace hard-coded 2 with GZIP_HEADER.length
5 years ago
Graham
23a85fd820
Add method for deleting MethodNode arguments
5 years ago
Graham
44ddde296f
Update JUnit test templates to fit OpenRS2's conventions
5 years ago
Graham
557f2fb504
Move remapping into a RemapTransformer
...
This allows us to run the remapping immediately between
OriginalNameTransformer and DummyArgTransformer.
5 years ago
Graham
46f908bdb0
Replace ClassForNameTransformer
...
This commit stops ClassForNameTransformer from extending Transformer and
renames it. I think this makes sense, as we don't use it like a normal
Transformer.
5 years ago
Graham
b97294457a
Make ClassNamePrefixer more similar to TypedRemapper
5 years ago
Graham
1319295d77
Separate remapping from the write{Pack,Jar} methods
...
This is a prerequisite for removing dummy arguments - before the methods
are remapped, removing an argument might cause the method to conflict
with another method with the same name and descriptor as the replacement
descriptor.
5 years ago
Graham
c6d184c5c5
Convert OriginalNameTransformer to a standard Transformer
5 years ago
Graham
318f906ab5
Make DummyLocalTransformer type-sensitive
...
This catches a few more dummy locals than the previous code.
5 years ago
Graham
7b3ec975d9
Inline constants in DummyArgTransformer
...
This is a prerequisite for us to be able to remove the constant
arguments.
5 years ago
Graham
1216812c8a
Add InsnNodeUtils.toString() method
...
Useful for debugging.
5 years ago
Graham
4cfb9d9f69
Remove dummy branch expressions instead of inserting POPs
...
This prevents Fernflower from inserting dummy boolean variables.
5 years ago
Graham
3242356c80
Remove unused throws declarations
5 years ago
Graham
ccea2f0f8e
Rename DummyTransformer to DummyArgTransformer
5 years ago
Graham
7747fe457a
Remove dummy local variables
5 years ago
Graham
4ad8606b97
License deob-annotations under the LGPL
...
Like the *-natives modules, it needs to be legal to link this code with
the proprietary client code.
5 years ago
Graham
550e201577
Fix typo ('the version 3.0' -> 'version 3.0')
5 years ago
Graham
1b77c5e454
Change GPL v3 -> v3.0
...
This is just to clarify that the intention is that only the original v3
license is acceptable.
5 years ago
Graham
f1c6f074a1
Add virtual instruction support to hasSideEffects() and StackMetadata
5 years ago
Graham
8c1f2c7b2f
Add hasSideEffects() function to InsnNodeUtils
5 years ago
Graham
176b109688
Add StackMetadata
...
I'm not yet sure if I'm going to need to use this, but I want to get it
in the repository so I have a copy of it for the future (this is already
the second time I've written something similar to it!)
5 years ago
Graham
5d2fd11128
Add jacoco-maven-plugin
5 years ago
Graham
9f49902962
Use ImmutableList in the Deobfuscator class
5 years ago
Graham
e894c331bc
Disable package-private inspection
5 years ago
Graham
ef9e61de33
Add StringUtilsTest
5 years ago
Graham
d2460c68ba
Update TODO in jaggl.c
5 years ago
Graham
003b7ecfef
Improve <description> wrapping
5 years ago
Graham
a5789b6860
Pass -Wno-int-to-void-pointer-cast to gcc on UNIX systems
...
It is triggered on 32-bit systems.
5 years ago
Graham
23e5f2bb29
Add READMEs
5 years ago
Graham
7b04a185e9
Add license
...
I was torn for a long time over whether to license under the GPL or
AGPL. I've settled on the GPL as I think it'd be quite hard to enforce
the AGPL (because of the nature of the RuneScape private server
community), and honest people would be at a disadvantage compared to
people who would ignore the additional provisions of the AGPL.
The *-natives modules are licensed under the LGPL as they are intended
to be linked with the proprietary client software, so the GPL would not
be appropriate.
I've decided to use v3 (and only v3) of the GPL. I don't like the 'or
later' clause as it means placing a great deal of trust in the FSF not
to change the overall intention of the license in future versions.
5 years ago
Graham
fbf6a5f597
Stop building OS-specific modules on all systems
...
They were only built on all systems for the benefit of the site plugin,
but I'm not intending to use that any more.
5 years ago
Graham
d2fb2bf8d8
Remove site descriptor
...
I think I'm going to use a separate static site generator. The Maven
site plugin isn't that great.
5 years ago
Graham
a1f7cf5ce4
Add HostCheckTransformer
5 years ago
Graham
405c33c1a1
Format *.xml files with IDEA's code style
5 years ago
Graham
aa7f90ceb6
Prevent if statements in swapped else blocks from incorrectly chaining
5 years ago
Graham
17d9a51669
Use single line comment in IfElseTransformer
5 years ago