355 Commits

Author SHA1 Message Date
oSumAtrIX
a306561b55
feat: sort patches in lexicographical order
Closes #125
2022-12-02 03:31:25 +01:00
oSumAtrIX
a925650044
feat: merge classes on addition (#127) 2022-12-02 02:31:47 +01:00
oSumAtrIX
bd053b7e99
fix: use MethodUtil.methodSignaturesMatch instead of Method.softCompareTo 2022-11-25 10:24:13 +01:00
oSumAtrIX
ba9d998681
feat: apply changes from ReVanced Patcher
BREAKING-CHANGE: Some annotations have been removed regarding fingerprints and patches.
2022-11-23 00:29:12 +01:00
oSumAtrIX
4164cb0dea
fix: fallback to patch class name instead of java.lang.Class class name 2022-11-18 02:14:20 +01:00
MewtR
f9bc95f220
fix: remove unnecessary dummy nop instructions (#111) 2022-11-14 16:57:13 +01:00
oSumAtrIX
538b2a8599
feat: remove unused annotation DirectPatternScanMethod 2022-10-05 03:57:40 +02:00
oSumAtrIX
4aa14bbb85
refactor: improve structuring of classes and their implementations
BREAKING CHANGE: various changes in which packages classes previously where and their implementation
2022-10-05 03:57:40 +02:00
oSumAtrIX
d37452997b
refactor: move OptionsContainer to own class file
BREAKING-CHANGE: this changes the package
2022-10-04 08:32:50 +02:00
oSumAtrIX
db21d5e953
refactor: remove unused import 2022-10-04 08:30:17 +02:00
oSumAtrIX
4d581811db
feat!: seal abstract class Patch as an interface 2022-10-04 08:30:17 +02:00
oSumAtrIX
8c502448be
feat!: remove unused annotation MatchingMethod 2022-10-04 08:30:16 +02:00
oSumAtrIX
fec16d9442
refactor: remove line break 2022-10-04 08:18:52 +02:00
oSumAtrIX
5583904994
feat: remove unused patch extensions
BREAKING CHANGE: These extensions do not exist anymore and any use should be removed
2022-10-04 08:18:43 +02:00
oSumAtrIX
797286b758
feat: remove unused extension dependsOn
BREAKING CHANGE: The extension does not exist anymore and any use should be removed
2022-10-04 08:18:09 +02:00
oSumAtrIX
4ae9ad09d6
feat: remove unused annotation SincePatcher
BREAKING CHANGE: The annotation does not exist anymore and any use should be removed
2022-10-04 08:16:58 +02:00
oSumAtrIX
843e62ad29
fix: use instruction index instead of strings list index for StringMatch 2022-09-29 21:27:56 +02:00
oSumAtrIX
9c07ffcc7a
fix: check dependencies for resource patches 2022-09-29 21:27:12 +02:00
oSumAtrIX
3ba4be240b
perf: decode resources only when necessary 2022-09-26 08:57:39 +02:00
oSumAtrIX
db4348c4fa
feat: RwLock for opening files in DomFileEditor 2022-09-26 03:21:13 +02:00
oSumAtrIX
fd5c878cee
fix!: revert reverting changes
BREAKING-CHANGE: Imports will have to be updated from `MethodFingerprintUtils` to `MethodFingerprint.Companion`.
2022-09-21 16:45:16 +02:00
bogadana
124332f0e9
revert: revert breaking changes (#106) 2022-09-21 15:22:55 +02:00
oSumAtrIX
76676fb567
fix(tests): access patternScanResult through scanResult 2022-09-21 03:42:29 +02:00
oSumAtrIX
d802ef844e
refactor!: move utility methods from MethodFingerprintUtils MethodFingerprint
BREAKING CHANGE: Imports will have to be updated from `MethodFingerprintUtils` to `MethodFingerprint.Companion`.

Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2022-09-21 01:38:49 +02:00
oSumAtrIX
90fc547673
refactor: suppress member visibility and unnecessary null assertion warnings
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2022-09-21 01:38:49 +02:00
oSumAtrIX
3813e28ac2
feat(fingerprint)!: StringsScanResult for MethodFingerprint
BREAKING CHANGE: `MethodFingerprint` now has a field for `MethodFingerprintScanResult`. `MethodFingerprintScanResult` now holds the previous field `MethodFingerprint.patternScanResult`.

Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2022-09-21 01:38:49 +02:00
oSumAtrIX
4bfd7ebff8
perf(fingerprint): do not resolve already resolved fingerprints
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2022-09-18 07:35:08 +02:00
oSumAtrIX
2f7e62ef65
fix(fingerprint): do not throw on MethodFingerprint.result getter
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2022-09-18 07:34:32 +02:00
d4rkk3y
085a3a479d
fix: compare any methods parameters (#101) 2022-09-14 18:34:58 +02:00
Sculas
172655bde0
feat: add PathOption back
Now backed by a String.
2022-09-09 16:23:21 +02:00
Sculas
e722e3f4f9
feat: improved Patch Options
Removed a lot of the type mess. There's still some duplicated code PatchOption.kt, but I'm afraid there's nothing I can do about that. It's not a big deal anyway.
2022-09-09 16:10:30 +02:00
Sculas
c348c1f0a0
refactor: remove PathOption and FileOption 2022-09-09 15:04:17 +02:00
Sculas
e31ac1f132
fix: wrong value for iterator in PatchOptions 2022-09-08 17:37:31 +02:00
Sculas
b873228ef0
fix: invalid type propagation in options
Fixes #98
2022-09-08 16:49:06 +02:00
Sculas
76c45dd7c1
fix: make patcher version public 2022-09-08 14:49:26 +02:00
Sculas
25f74dc5e9
feat: SincePatcher annotation 2022-09-08 14:41:42 +02:00
Sculas
6e73631d4d
fix: remove repeatable from PatchDeprecated 2022-09-08 14:00:15 +02:00
Sculas
62aa295e73
fix: broken deprecation message 2022-09-08 13:42:26 +02:00
Sculas
596ede1b12
refactor: make patchName work on any class 2022-09-08 13:42:15 +02:00
Sculas
002f84da1a
Merge remote-tracking branch 'origin/main' into main 2022-09-08 11:29:14 +02:00
Sculas
aff4968e6f
fix: handle option types and nulls properly 2022-09-08 11:29:06 +02:00
Sculas
4055939c08
fix: only run list option check if not null 2022-09-07 23:46:46 +02:00
Sculas
79f91e0e5a
fix: invalid types for example options 2022-09-07 23:22:34 +02:00
Sculas
ad3d332e27
fix: handle private companion objects 2022-09-07 23:21:32 +02:00
Sculas
80c2e80925
feat: deprecation for patches 2022-09-07 22:31:15 +02:00
Sculas
6b909c1ee6
refactor: Improve Patch Options
It's so much better now. Really happy with the current system.

BREAKING CHANGE: Options has been moved from Patch to a new interface called OptionsContainer and are now handled entirely different. Make sure to check the examples to understand how it works.
2022-09-07 20:55:35 +02:00
Sculas
a562e476c0
fix: PathOption should be open, not sealed 2022-09-06 22:36:20 +02:00
Sculas
75d2be8803
perf: make exception an object 2022-09-06 22:35:33 +02:00
Sculas
d6308e126c
fix: add tests for PathOption 2022-09-06 22:35:00 +02:00
Sculas
bb97af4d86
refactor: add FileOption alias for PathOption 2022-09-06 22:34:46 +02:00