oSumAtrIX
0abf1c6c02
feat: Improve Fingerprint API ( #316 )
...
Fingerprints can now be matched easily without adding them to a patch first.
BREAKING CHANGE: Many APIs have been changed.
2024-10-27 16:04:30 +01:00
oSumAtrIX
aa472eb985
fix: Merge extension only when patch executes ( #315 )
2024-10-27 16:00:30 +01:00
oSumAtrIX
d53aacdad4
perf: Free memory earlier and remove negligible lookup maps
...
Negligible lookup maps used for matching fingerprints have been removed to reduce the likelihood of OOM when the maps are instantiated, commonly observed with 400M RAM. Additionally, lookup maps previously kept for the duration of the patcher instance are now cleared before the classes are compiled. This reduces the likelihood of OOM when compiling classes.
On a related note, a linear increase in memory usage is observed with every compiled class until all classes are compiled implying compiled classes not being freed by GC because they are still referenced. After compiling a class, the class is technically free-able though. The classes are assumed to be referenced in the `multidexlib2` library that takes the list of all classes to compile multiple DEX with and seems to hold the reference to all these classes in memory until all DEX are compiled. A clever fix would involve splitting the list of classes into chunks and getting rid of the list of all classes so that after every DEX compilation, the corresponding split of classes can be freed.
2024-10-03 16:06:42 +02:00
oSumAtrIX
5227e98abf
fix: Downgrade smali to fix dex compilation issue
2024-08-06 16:53:42 +02:00
oSumAtrIX
11a911dc67
feat: Convert APIs to Kotlin DSL ( #298 )
...
This commit converts various APIs to Kotlin DSL.
BREAKING CHANGE: Various old APIs are removed, and DSL APIs are added instead.
2024-08-06 16:53:42 +02:00
oSumAtrIX
5535eb4f01
refactor: improve ExampleResourcePatch
...
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de >
2022-06-05 08:03:33 +02:00
oSumAtrIX
d20f7fd6e1
feat: use annotations instead of metadata objects
...
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de >
2022-06-05 08:03:31 +02:00
oSumAtrIX
fc05fe79de
fix: failing tests temporarily
...
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de >
2022-06-05 08:03:29 +02:00
oSumAtrIX
99319e63da
add: resource patcher
...
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de >
2022-06-05 08:03:28 +02:00
Lucaskyy
8f1a629191
fix: make warnings nullable instead of lateinit
2022-06-05 08:03:22 +02:00
Lucaskyy
715a2ad025
feat: Add warnings for Fuzzy resolver
2022-06-05 08:03:18 +02:00
oSumAtrIX
1f08da8b2a
refact: include each signature in its corresponding patch
...
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de >
2022-06-05 08:03:14 +02:00
Lucaskyy
b2dab3fabf
refactor: rename method to resolverMethod
2022-06-05 08:03:14 +02:00
Lucaskyy
642e9031eb
feat: Add patch metadata
...
Fixes ReVancedTeam/revanced-patches#1
2022-06-05 08:03:13 +02:00
Lucaskyy
7a56dca004
feat: add fuzzy resolver
...
fixed docs for MethodSignature & added tests for fuzzy resolver
2022-06-05 08:03:13 +02:00
Lucaskyy
18853f70a4
refactor: migrate signature schema changes to Patcher
...
also updated Extensions, for good measure.
2022-06-05 08:03:13 +02:00
oSumAtrIX
6b8b0573d4
feat: add missing test for fields
...
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de >
2022-06-05 08:03:12 +02:00
Lucaskyy
72f3cad3f9
refactor: Change all references from Array to Iterable
...
BREAKING CHANGE: arrayOf has to be changed to listOf.
2022-06-05 08:03:10 +02:00
Lucaskyy
94dbb573cf
refactor: bump multidexlib2, dexlib2 and smali
2022-06-05 08:03:07 +02:00
Lucaskyy
c267b12a7d
refactor: make method a property
2022-06-05 08:03:04 +02:00
Lucaskyy
45303f66ec
test: fix test with previous changes
2022-06-05 08:03:03 +02:00
oSumAtrIX
0d8d19e708
feat: Finish first patcher test
2022-06-05 08:03:00 +02:00
oSumAtrIX
544bcf76bd
feat: Add first tests
2022-06-05 08:02:58 +02:00
oSumAtrIX
3651981161
feat: migrate to dexlib
...
BREAKING CHANGE: Removed usage of ASM library
2022-06-05 08:02:51 +02:00
Lucaskyy
fa6e454ae9
test: fix assert message
2022-06-05 08:02:50 +02:00
Lucaskyy
cbd8df2df0
fix(MethodResolver): fix cd57a8c9a0
2022-06-05 08:02:49 +02:00
Lucaskyy
7faa001406
refactor: Optimize Signature class ( #11 )
...
BREAKING CHANGE: Array<Int> was changed to IntArray. This breaks existing patches.
2022-06-05 08:02:44 +02:00
Lucaskyy
70872307e3
refactor: Rename net.revanced to app.revanced
...
BREAKING CHANGE: Package name was changed from "net.revanced" to "app.revanced"
2022-06-05 08:02:44 +02:00