oSumAtrIX
650bf71124
docs: Document important parts of the code
2022-06-05 08:02:53 +02:00
oSumAtrIX
1dd3394ea3
refactor: Replacing original classes with mutated ones
2022-06-05 08:02:53 +02:00
oSumAtrIX
e6c2501539
fix: Fixed writer & signature resolver, improved tests & speed, minor refactoring
2022-06-05 08:02:52 +02:00
oSumAtrIX
4b26305bd5
feat: Minor refactor and return proxy, if class has been proxied already
2022-06-05 08:02:52 +02:00
oSumAtrIX
ce21bd60f3
fix: Move proxy package out of cache package
2022-06-05 08:02:51 +02:00
oSumAtrIX
3651981161
feat: migrate to dexlib
...
BREAKING CHANGE: Removed usage of ASM library
2022-06-05 08:02:51 +02:00
semantic-release-bot
6299b9e951
chore(release): 1.0.0-dev.8 [skip ci]
...
# [1.0.0-dev.8](https://github.com/ReVancedTeam/revanced-patcher/compare/v1.0.0-dev.7...v1.0.0-dev.8 ) (2022-03-24)
### Performance Improvements
* check type instead of class ([47eb493
](47eb493f54
))
2022-06-05 08:02:51 +02:00
semantic-release-bot
24b544708f
chore(release): 1.0.0-dev.7 [skip ci]
...
# [1.0.0-dev.7](https://github.com/ReVancedTeam/revanced-patcher/compare/v1.0.0-dev.6...v1.0.0-dev.7 ) (2022-03-24)
### Bug Fixes
* **MethodResolver:** fix cd57a8c9a0
([1af31b2
](1af31b2aa3
))
2022-06-05 08:02:50 +02:00
Lucaskyy
c7ef2644d8
perf: check type instead of class
...
this is way better, thank you oSumAtrIX!
2022-06-05 08:02:50 +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
semantic-release-bot
f3d8b917de
chore(release): 1.0.0-dev.6 [skip ci]
...
# [1.0.0-dev.6](https://github.com/ReVancedTeam/revanced-patcher/compare/v1.0.0-dev.5...v1.0.0-dev.6 ) (2022-03-24)
### Bug Fixes
* **MethodResolver:** strip labels nodes so opcode patterns match ([cd57a8c
](cd57a8c9a0
))
2022-06-05 08:02:49 +02:00
Lucaskyy
82c530650f
fix(MethodResolver): strip labels nodes so opcode patterns match
...
this commit is also a fix for 8d1bb5f3d9
because it corrupted the stack by completely removing the nodes
2022-06-05 08:02:49 +02:00
semantic-release-bot
81d0cf20f3
chore(release): 1.0.0-dev.5 [skip ci]
...
# [1.0.0-dev.5](https://github.com/ReVancedTeam/revanced-patcher/compare/v1.0.0-dev.4...v1.0.0-dev.5 ) (2022-03-24)
### Bug Fixes
* **MethodResolver:** strip labels and line numbers so opcode patterns match ([8d1bb5f
](8d1bb5f3d9
))
2022-06-05 08:02:48 +02:00
Lucaskyy
36d4f71325
refactor: log as trace instead of debug
...
so there's less spam in console
2022-06-05 08:02:48 +02:00
Lucaskyy
699c730a7c
fix(MethodResolver): strip labels and line numbers so opcode patterns match
2022-06-05 08:02:48 +02:00
Lucaskyy
b197956e39
refactor: only compute maxs and use existing stack frames
2022-06-05 08:02:47 +02:00
semantic-release-bot
be992a3e6f
chore(release): 1.0.0-dev.4 [skip ci]
...
# [1.0.0-dev.4](https://github.com/ReVancedTeam/revanced-patcher/compare/v1.0.0-dev.3...v1.0.0-dev.4 ) (2022-03-23)
### Bug Fixes
* give ClassWriter a ClassReader for symtable ([e8f6973
](e8f6973938
))
2022-06-05 08:02:47 +02:00
semantic-release-bot
e0437397df
chore(release): 1.0.0-dev.3 [skip ci]
...
# [1.0.0-dev.3](https://github.com/ReVancedTeam/revanced-patcher/compare/v1.0.0-dev.2...v1.0.0-dev.3 ) (2022-03-23)
### Features
* add SafeClassWriter ([ca6b94d
](ca6b94d943
))
2022-06-05 08:02:47 +02:00
Lucaskyy
41749ba829
fix: give ClassWriter a ClassReader for symtable
...
removed SafeClassWriter as it was unused
2022-06-05 08:02:46 +02:00
semantic-release-bot
8161ce4fa6
chore(release): 1.0.0-dev.2 [skip ci]
...
# [1.0.0-dev.2](https://github.com/ReVancedTeam/revanced-patcher/compare/v1.0.0-dev.1...v1.0.0-dev.2 ) (2022-03-23)
### Bug Fixes
* set marklimit to Integer.MAX_VALUE ([ab6453c
](ab6453ca8a
))
2022-06-05 08:02:46 +02:00
Lucaskyy
6626014ef3
feat: add SafeClassWriter
...
the standard ClassWriter implementation uses the ClassLoader to find a common superclass. this won't work for us since we are not loading the JAR into the classpath. using this SafeClassWriter should fix that issue.
2022-06-05 08:02:46 +02:00
Lucaskyy
e6e468fbb5
fix: set marklimit to Integer.MAX_VALUE
2022-06-05 08:02:45 +02:00
semantic-release-bot
2fabbdf71b
chore(release): 1.0.0-dev.1 [skip ci]
...
# 1.0.0-dev.1 (2022-03-23)
### Bug Fixes
* avoid ignoring test resources (fixes [#1 ](https://github.com/ReVancedTeam/revanced-patcher/issues/1 )) ([d5a3c76
](d5a3c76389
))
* current must be calculated after increment ([5f12bab
](5f12bab5df
))
* **gradle:** publish source and javadocs ([87bbde5
](87bbde5e06
))
* **Io:** fix finding classes by name ([460d62a
](460d62a24c
))
* **Io:** JAR loading and saving ([#8 ](https://github.com/ReVancedTeam/revanced-patcher/issues/8 )) ([4d98cbc
](4d98cbc9e8
))
* nullable signature members ([#10 ](https://github.com/ReVancedTeam/revanced-patcher/issues/10 )) ([8db8893
](8db8893ab1
))
* Patch should have access to the Cache ([6c0f082
](6c0f0823c9
))
* remove broken code ([0e72a6e
](0e72a6e85f
))
* set index for insertAt to 0 by default ([1769132
](1769132a9e
))
* workflow on dev branch ([7e67daf
](7e67daf878
))
### Code Refactoring
* convert Patch to abstract class ([23e897a
](23e897a7a9
))
* Optimize Signature class ([#11 ](https://github.com/ReVancedTeam/revanced-patcher/issues/11 )) ([49beec9
](49beec9fc6
))
* Rename `net.revanced` to `app.revanced` ([3ab42a9
](3ab42a932c
))
### Features
* Add `findParentMethod` utility method ([#4 ](https://github.com/ReVancedTeam/revanced-patcher/issues/4 )) ([00c6ab7
](00c6ab7faf
))
### BREAKING CHANGES
* Array<Int> was changed to IntArray. This breaks existing patches.
* Package name was changed from "net.revanced" to "app.revanced"
* Method signature of execute() was changed to include the cache, this will break existing implementations of the Patch class.
* Patch class is now an abstract class. You must implement it. You can use anonymous implements, like done in the tests.
2022-06-05 08:02:45 +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
oSumAtrIX
310a7c446b
fix(Io): JAR loading and saving ( #8 )
...
* refactor: Complete rewrite of `Io`
* style: format code
* style: rewrite todos
* fix: use lateinit instead of nonnull assert for zipEntry
* fix: use lateinit instead of nonnull assert for jarEntry & reuse zipEntry
* docs: add docs to `Patcher`
* test: match output of patcher
* chore: add todo to `Io` for removing non-class files
Co-authored-by: Sculas <contact@sculas.xyz>
2022-06-05 08:02:43 +02:00
Lucaskyy
c236ebe078
fix(gradle): publish source and javadocs
2022-06-05 08:02:43 +02:00
oSumAtrIX
674461f08d
fix: nullable signature members ( #10 )
...
This commit will allow "partial" signatures, basically we will be allowed to exclude members to match for the signature
2022-06-05 08:02:43 +02:00
oSumAtrIX
bbb2c547aa
feat: Add findParentMethod
utility method ( #4 )
...
* feat: Add `findParentMethod` utitly method
* refactor: add `resolveMethod` to `MethodResolver`
added some assertions and some tests
Co-authored-by: Lucaskyy <contact@sculas.xyz>
2022-06-05 08:02:42 +02:00
Bleuzen
b957501e70
fix(Io): fix finding classes by name
2022-06-05 08:02:42 +02:00
Lucaskyy
b6ca31a970
chore: push IntelliJ project files
2022-06-05 08:02:42 +02:00
Lucaskyy
cbcf93f7d6
refactor: target java 8 instead of java 17
2022-06-05 08:02:41 +02:00
Lucaskyy
d5b4c99c00
fix: set index for insertAt to 0 by default
2022-06-05 08:02:41 +02:00
Lucaskyy
4dd820ffdf
fix: Patch should have access to the Cache
...
BREAKING CHANGE: Method signature of execute() was changed to include the cache, this will break existing implementations of the Patch class.
2022-06-05 08:02:41 +02:00
Lucaskyy
cb9b1b9416
refactor: convert Patch to abstract class
...
BREAKING CHANGE: Patch class is now an abstract class. You must implement it. You can use anonymous implements, like done in the tests.
2022-06-05 08:02:40 +02:00
Lucaskyy
428f7f4dec
fix: workflow on dev branch
2022-06-05 08:02:40 +02:00
Lucaskyy
77536cce8f
style: remove tab
2022-06-05 08:02:39 +02:00
she11sh0cked
7b6a61b674
ci: add gradle-semantic-release-plugin
and remove the github release assets
2022-06-05 08:02:39 +02:00
she11sh0cked
7f5f3b217d
ci: add semantic-release
2022-06-05 08:02:39 +02:00
Lucaskyy
5ecbbfc954
chore: fix credentials for publishing
2022-03-20 20:32:17 +01:00
Lucaskyy
cd1baabe2e
chore: publish package to GitHub Packages
2022-03-20 20:30:51 +01:00
Lucaskyy
b3762bd5c7
chore: move version to properties
2022-03-20 20:22:51 +01:00
Lucaskyy
6b1cec4a43
test: add test for multiple classes in jar
2022-03-20 19:05:24 +01:00
Lucaskyy
5f12bab5df
fix: current must be calculated after increment
2022-03-20 16:57:33 +01:00
Lucaskyy
ec8115f3ac
test: improve PatcherTest
2022-03-20 16:28:23 +01:00
Lucaskyy
0e72a6e85f
fix: remove broken code
...
accidentally committed TestUtil in previous commit, this allows it to compile again
2022-03-20 15:57:05 +01:00
Lucaskyy
d5a3c76389
fix: avoid ignoring test resources ( fixes #1 )
2022-03-20 15:54:41 +01:00
oSumAtrIX
ded2538605
Renamed Jar2ASM
to Io
due to reader & writer class
2022-03-20 03:19:13 +01:00
oSumAtrIX
5d146c362f
Improve example test testPatcher
and increase caching speed
2022-03-20 03:06:23 +01:00