400 Commits

Author SHA1 Message Date
oSumAtrIX
f9da2ad531
fix: show error message if cause is null 2022-08-14 17:22:43 +02:00
dan1st
123ad54c15
fix: close open files (#75) 2022-08-07 00:16:23 +02:00
Sculas
09f6ab4155
Merge remote-tracking branch 'origin/main' into main 2022-08-03 18:32:34 +02:00
Sculas
01cf3fb50f
refactor: util package structure 2022-08-03 18:31:31 +02:00
oSumAtrIX
7b2d058144
fix: revert soft dependencies 2022-08-03 03:45:34 +02:00
Sculas
2572cd04b5
feat: add getValue & setValue for PatchOption 2022-08-02 23:30:38 +02:00
Sculas
14a73bfcaf
fix: check if patch option requirement is met 2022-08-02 22:41:34 +02:00
Sculas
371f0c4d0b
feat: PatchOptions#nullify to nullify an option 2022-08-02 22:32:55 +02:00
Sculas
1b42f65d95
refactor: migrate to custom exceptions for patch options 2022-08-02 22:16:37 +02:00
Sculas
67a5237541
test: refactor & add more tests 2022-08-02 22:00:32 +02:00
Sculas
4e2e772389
feat: validator for patch options 2022-08-02 22:00:10 +02:00
Sculas
2431785d0e
feat: registry for patch options
BREAKING CHANGE: Patch options now use the PatchOptions registry class instead of an Iterable. This change requires modifications to existing patches using this API.
2022-08-02 21:10:14 +02:00
oSumAtrIX
5f7ef2dbff
Merge remote-tracking branch 'origin/main' 2022-08-02 03:09:02 +02:00
Sculas
ec1d8a8fba
refactor: remove DependencyType.SOFT (#82)
BREAKING-CHANGE: DependencyType.SOFT has now been removed after it was deprecated. There is no direct replacement for this. Please look into Patch Options instead, which supersedes this.
2022-08-02 00:47:32 +02:00
oSumAtrIX
814ce0b9ae
feat: exclusive mutable access to files 2022-08-02 00:42:38 +02:00
oSumAtrIX
8d95b14f35
fix: show error message instead of null 2022-08-02 00:42:38 +02:00
Sculas
fbb09f38dc
feat: patch options (#81)
* feat: Patch Options

* refactor: remove delegate property

* feat: List patch options

* refactor: add setter example to PatchOptionsUsage.kt

* docs: add docs for PatchOptions

* docs: tidy docs
2022-08-02 00:31:00 +02:00
oSumAtrIX
bbd40bf2f6
feat: Closeable patches 2022-08-01 04:12:33 +02:00
Sculas
3de999a2d3
refactor: remove ReplaceWith from DependencyType.SOFT 2022-07-31 18:35:02 +02:00
Sculas
fcc7fa75d0
refactor: deprecate DependencyType.SOFT
Soft dependencies will be removed when Patch Options is implemented.
2022-07-31 18:31:40 +02:00
Sculas
8c12f8d488
feat: Soft Dependencies for Patches 2022-07-31 16:50:59 +02:00
Sculas
523f67b238
feat: add Patch#dependsOn extension 2022-07-31 15:07:23 +02:00
Sculas
4813a8b48e
chore: remove import 2022-07-31 15:01:38 +02:00
Sculas
d5c66022c9
refactor: get rid of package names in example 2022-07-31 15:01:13 +02:00
oSumAtrIX
77604d4078
fix: close stream when closing DomFileEditor 2022-07-18 01:28:16 +02:00
oSumAtrIX
91298a8790
Merge pull request #52 from revanced/feat/smali-branching
feat: improve Smali compiler
2022-07-09 15:03:01 +02:00
oSumAtrIX
f2a7cff41c
style: fix casing of the first letter in comments 2022-07-09 06:27:49 +02:00
oSumAtrIX
dd941233ca
refactor: improve the addInstructions extension method further more 2022-07-09 06:26:05 +02:00
bogadana
482af78f2b
fix: handle null properly (#64) 2022-07-07 08:33:40 +02:00
bogadana
4ea030d0a0
feat: nullability for BytecodePatch constructor (#59) 2022-07-05 16:46:54 +02:00
oSumAtrIX
48068cb3d7
fix: MethodWalker not accounting for all reference instructions 2022-07-03 22:51:04 +02:00
oSumAtrIX
4b2e3230ec
fix: more useful error message 2022-07-03 15:37:48 +02:00
oSumAtrIX
83187c9edd
fix: DomFileEditor opening in- and output streams on the same file 2022-07-03 00:19:39 +02:00
oSumAtrIX
6f72c4c4c0
feat: streams overload for XmlFileHolder 2022-07-02 17:44:08 +02:00
oSumAtrIX
c8eedac4d9
refactor: members of ResourceData 2022-07-02 16:22:19 +02:00
oSumAtrIX
ada5a033de
feat: remove deprecated functions 2022-07-02 04:21:20 +02:00
oSumAtrIX
e2faf4ca9b fix: invert fingerprint resolution condition of customFingerprint 2022-06-30 01:36:25 +02:00
oSumAtrIX
2134182a0e
refactor: declare data parameter internal 2022-06-29 19:55:23 +02:00
oSumAtrIX
a467fbb704
feat: log failed patches due to failed dependencies 2022-06-28 03:25:49 +02:00
Lucaskyy
6bfe5716c3
feat: Improve Smali Compiler
- Branching support has been added. See InlineSmaliCompilerTest.kt for an example.
- Some other improvements have been made too.
2022-06-27 21:11:59 +02:00
oSumAtrIX
2fc4ec4021
fix: use Exception instead of MethodNotFoundException 2022-06-26 18:01:54 +02:00
Lucaskyy
f565c4f6a7
refactor: improve ResourceData.kt
Old methods have been marked as deprecated, and will be removed in the future.

- ResourceData.kt was made an Iterable<File>, and the forEach method was removed in favor of Kotlin's forEach function. (no modifications required)
- The resolve method was deprecated in favor of a new operator getter function, which can be either called using get(path) or data[path]. This keeps backwards compatibility with the old get method.
- The getXmlEditor method was deprecated in favor of the new xmlEditor variable, which is a XmlFileHolder which has an operator getter which acts like an array. This is syntactically better.
2022-06-26 17:14:38 +02:00
Lucaskyy
35749454ab
refactor: remove deprecated methods in ResourceData.kt 2022-06-26 16:53:25 +02:00
Lucaskyy
2b492e7a5e
refactor: cleanup code 2022-06-26 16:32:22 +02:00
Lucaskyy
081a5a6849
refactor: fmt ExampleBytecodePatch.kt 2022-06-26 16:21:55 +02:00
Lucaskyy
852ae7d8d1
refactor: move BytecodeData#proxy into class 2022-06-26 16:20:45 +02:00
oSumAtrIX
efa8ea1445 refactor: migrate from Signature to Fingerprint
BREAKING CHANGE: Not backwards compatible, since a lot of classes where renamed.
2022-06-26 15:10:54 +02:00
bogadana
92ac5e4dc2
feat: add replace and remove extensions (#50) 2022-06-24 18:47:37 +02:00
oSumAtrIX
0e87ef56c4
fix: mutability of local variable modified 2022-06-23 08:57:41 +02:00
oSumAtrIX
e3bf367ad6
fix: callback only when inteded 2022-06-23 08:54:47 +02:00