-
-
Notifications
You must be signed in to change notification settings - Fork 168
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: Log not showing in CLI #80
Conversation
…Handler which flushes after every log statement
i told you this doesnt work properly, it prints twice |
doing it like this works but doesnt seem like the best solution init {
logger.useParentHandlers = false
logger.handlers.forEach { logger.removeHandler(it) }
logger.addHandler(FlushingStreamHandler(System.out, SimpleFormatter()))
} |
Any update on this? This issue is really annoying |
Ok, so I believe I found the problem. The simple (but not really good) solution will be to remove all handlers when we adding new one (I've checked it, the only handler that we add is ours). This solution is bad because any configuration of the logger will be overridden, but we don't have any. The proper solution may be to migrate to other logging frameworks that will have more flexible configuration. |
…no handlers already. Changed errorLogger name from hardcoded to reusing previous logger name, so it will have the same name if only first parameter is used.
Replaced removal of handlers with conditional addition of handler. Now it will be added only the first time. |
Additionally it seems that |
…lass names in loggers
Is this ready to get merged? |
Yep, working fine for me and all of the mentioned fixes are already in the PR |
🎉 This PR is included in version 2.5.3 🎉 The release is available on:
Your semantic-release bot 📦🚀 |
# 1.0.0 (2022-08-31) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/j-hc/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * align every file ([96ec6a0](96ec6a0)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * deploy to `adb` ([f9b987e](f9b987e)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * fix noSuchMethodError ([00fec25](00fec25)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * keystore file not found exception ([ReVanced#57](https://github.com/j-hc/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log not showing in CLI ([ReVanced#80](https://github.com/j-hc/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/j-hc/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/j-hc/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/j-hc/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/j-hc/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * use latest version of patches dependency ([029f1ad](029f1ad)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/j-hc/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/j-hc/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/j-hc/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/j-hc/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add CLI ([6664f49](6664f49)) * add logging back ([4a23cb6](4a23cb6)) * add option to specify keystore file path ([9331594](9331594)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/j-hc/revanced-cli/issues/42)) ([b977d70](b977d70)) * better output for excluded patches ([ReVanced#77](https://github.com/j-hc/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * debugging option ([1b645c6](1b645c6)) * improve logging ([df85fa3](df85fa3)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * remove extra zipalign step ([ReVanced#106](https://github.com/j-hc/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * riplib ([bd5c78c](bd5c78c)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/j-hc/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/j-hc/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * support for `--install` ([d1ceab4](d1ceab4)) * use `install` mode by default ([1a3db77](1a3db77)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0 (2022-09-01) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/Thuyen21/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * align every file ([96ec6a0](96ec6a0)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * deploy to `adb` ([f9b987e](f9b987e)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * fix noSuchMethodError ([00fec25](00fec25)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * keystore file not found exception ([ReVanced#57](https://github.com/Thuyen21/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log not showing in CLI ([ReVanced#80](https://github.com/Thuyen21/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/Thuyen21/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/Thuyen21/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/Thuyen21/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/Thuyen21/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * use latest version of patches dependency ([029f1ad](029f1ad)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/Thuyen21/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/Thuyen21/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/Thuyen21/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/Thuyen21/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add CLI ([6664f49](6664f49)) * add logging back ([4a23cb6](4a23cb6)) * add option to specify keystore file path ([9331594](9331594)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/Thuyen21/revanced-cli/issues/42)) ([b977d70](b977d70)) * better output for excluded patches ([ReVanced#77](https://github.com/Thuyen21/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * debugging option ([1b645c6](1b645c6)) * improve logging ([df85fa3](df85fa3)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * remove extra zipalign step ([ReVanced#106](https://github.com/Thuyen21/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/Thuyen21/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/Thuyen21/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * support for `--install` ([d1ceab4](d1ceab4)) * use `install` mode by default ([1a3db77](1a3db77)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0 (2022-11-05) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/ThexXTURBOXx/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * align every file ([96ec6a0](96ec6a0)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken deprecation message ([e3e74ac](e3e74ac)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * deploy to `adb` ([f9b987e](f9b987e)) * don't print same patch multiple times ([f4b0469](f4b0469)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * escape quotation mark in string ([6e21d81](6e21d81)) * fix noSuchMethodError ([00fec25](00fec25)) * **gitignore:** ignore `options.toml` ([ReVanced#158](https://github.com/ThexXTURBOXx/revanced-cli/issues/158)) ([7be9af0](7be9af0)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * keystore file not found exception ([ReVanced#57](https://github.com/ThexXTURBOXx/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log not showing in CLI ([ReVanced#80](https://github.com/ThexXTURBOXx/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/ThexXTURBOXx/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/ThexXTURBOXx/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/ThexXTURBOXx/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/ThexXTURBOXx/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * update workflow actions ([fc5897a](fc5897a)) * use absolute file path for key store ([d335846](d335846)) * use latest version of patches dependency ([029f1ad](029f1ad)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/ThexXTURBOXx/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/ThexXTURBOXx/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/ThexXTURBOXx/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/ThexXTURBOXx/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add CLI ([6664f49](6664f49)) * add logging back ([4a23cb6](4a23cb6)) * add option to specify keystore file path ([9331594](9331594)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/ThexXTURBOXx/revanced-cli/issues/42)) ([b977d70](b977d70)) * better output for excluded patches ([ReVanced#77](https://github.com/ThexXTURBOXx/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * check, if input file exists ([b6dff6d](b6dff6d)) * debugging option ([1b645c6](1b645c6)) * handle unmounting deleted files ([ReVanced#148](https://github.com/ThexXTURBOXx/revanced-cli/issues/148)) ([3a733e5](3a733e5)) * improve logging ([df85fa3](df85fa3)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * Patch Options CLI implementation ([ReVanced#132](https://github.com/ThexXTURBOXx/revanced-cli/issues/132)) ([3f5345a](3f5345a)) * remove extra zipalign step ([ReVanced#106](https://github.com/ThexXTURBOXx/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * remove unused option `-r` ([467d838](467d838)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * section `acknowledgements` for issue templates ([0e3ecc3](0e3ecc3)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/ThexXTURBOXx/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/ThexXTURBOXx/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * support for `--install` ([d1ceab4](d1ceab4)) * unmount all occurrences in `/proc/mounts` ([ReVanced#131](https://github.com/ThexXTURBOXx/revanced-cli/issues/131)) ([4f4e1f9](4f4e1f9)) * use `am` instead of `monkey` to launch the app ([ReVanced#159](https://github.com/ThexXTURBOXx/revanced-cli/issues/159)) ([6a35cf7](6a35cf7)) * use `install` mode by default ([1a3db77](1a3db77)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0 (2022-12-13) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/tathaha/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * align every file ([96ec6a0](96ec6a0)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken deprecation message ([e3e74ac](e3e74ac)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * deploy to `adb` ([f9b987e](f9b987e)) * don't print same patch multiple times ([f4b0469](f4b0469)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * escape quotation mark in string ([6e21d81](6e21d81)) * fix noSuchMethodError ([00fec25](00fec25)) * **gitignore:** ignore `options.toml` ([ReVanced#158](https://github.com/tathaha/revanced-cli/issues/158)) ([7be9af0](7be9af0)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * keystore file not found exception ([ReVanced#57](https://github.com/tathaha/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log not showing in CLI ([ReVanced#80](https://github.com/tathaha/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/tathaha/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/tathaha/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/tathaha/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/tathaha/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * use latest version of patches dependency ([029f1ad](029f1ad)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/tathaha/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/tathaha/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/tathaha/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/tathaha/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add CLI ([6664f49](6664f49)) * add logging back ([4a23cb6](4a23cb6)) * add option to specify keystore file path ([9331594](9331594)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/tathaha/revanced-cli/issues/42)) ([b977d70](b977d70)) * better output for excluded patches ([ReVanced#77](https://github.com/tathaha/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * check, if input file exists ([b6dff6d](b6dff6d)) * debugging option ([1b645c6](1b645c6)) * do not warn on incompatible packages ([39e377b](39e377b)) * handle unmounting deleted files ([ReVanced#148](https://github.com/tathaha/revanced-cli/issues/148)) ([3a733e5](3a733e5)) * improve logging ([df85fa3](df85fa3)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * Patch Options CLI implementation ([ReVanced#132](https://github.com/tathaha/revanced-cli/issues/132)) ([3f5345a](3f5345a)) * remove extra zipalign step ([ReVanced#106](https://github.com/tathaha/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * remove unused option `-r` ([467d838](467d838)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * section `acknowledgements` for issue templates ([0e3ecc3](0e3ecc3)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/tathaha/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/tathaha/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * support for `--install` ([d1ceab4](d1ceab4)) * unmount all occurrences in `/proc/mounts` ([ReVanced#131](https://github.com/tathaha/revanced-cli/issues/131)) ([4f4e1f9](4f4e1f9)) * use `am` instead of `monkey` to launch the app ([ReVanced#159](https://github.com/tathaha/revanced-cli/issues/159)) ([6a35cf7](6a35cf7)) * use `install` mode by default ([1a3db77](1a3db77)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0 (2022-12-23) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/shadow578/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * align every file ([96ec6a0](96ec6a0)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken deprecation message ([e3e74ac](e3e74ac)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * deploy to `adb` ([f9b987e](f9b987e)) * don't log when package is incompatible and `exclusive` option is used ([ad81a1b](ad81a1b)) * don't print same patch multiple times ([f4b0469](f4b0469)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * escape quotation mark in string ([6e21d81](6e21d81)) * exclude patcher dependency from minimizing ([d5794b9](d5794b9)) * fix noSuchMethodError ([00fec25](00fec25)) * **gitignore:** ignore `options.toml` ([ReVanced#158](https://github.com/shadow578/revanced-cli/issues/158)) ([7be9af0](7be9af0)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * invalid header when writing a `ZipFile` ([ReVanced#169](https://github.com/shadow578/revanced-cli/issues/169)) ([6e703eb](6e703eb)) * keystore file not found exception ([ReVanced#57](https://github.com/shadow578/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log not showing in CLI ([ReVanced#80](https://github.com/shadow578/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/shadow578/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/shadow578/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/shadow578/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * start with uppercase in log message ([ae91b0d](ae91b0d)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/shadow578/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * use correct prefix in log message ([1a67cd8](1a67cd8)) * use latest version of patches dependency ([029f1ad](029f1ad)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/shadow578/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/shadow578/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/shadow578/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/shadow578/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add CLI ([6664f49](6664f49)) * add logging back ([4a23cb6](4a23cb6)) * add option to specify keystore file path ([9331594](9331594)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/shadow578/revanced-cli/issues/42)) ([b977d70](b977d70)) * better output for excluded patches ([ReVanced#77](https://github.com/shadow578/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * check, if input file exists ([b6dff6d](b6dff6d)) * debugging option ([1b645c6](1b645c6)) * do not warn on incompatible packages ([39e377b](39e377b)) * handle unmounting deleted files ([ReVanced#148](https://github.com/shadow578/revanced-cli/issues/148)) ([3a733e5](3a733e5)) * improve logging ([df85fa3](df85fa3)) * improve missing compatibility annotation tracing log ([2c7eb72](2c7eb72)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * Patch Options CLI implementation ([ReVanced#132](https://github.com/shadow578/revanced-cli/issues/132)) ([3f5345a](3f5345a)) * remove extra zipalign step ([ReVanced#106](https://github.com/shadow578/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * remove unused option `-r` ([467d838](467d838)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * section `acknowledgements` for issue templates ([0e3ecc3](0e3ecc3)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/shadow578/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/shadow578/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * simplify log message ([74d73ca](74d73ca)) * support for `--install` ([d1ceab4](d1ceab4)) * trace logs when compatibility annotation is missing ([ReVanced#166](https://github.com/shadow578/revanced-cli/issues/166)) ([c590bf5](c590bf5)) * unmount all occurrences in `/proc/mounts` ([ReVanced#131](https://github.com/shadow578/revanced-cli/issues/131)) ([4f4e1f9](4f4e1f9)) * use `am` instead of `monkey` to launch the app ([ReVanced#159](https://github.com/shadow578/revanced-cli/issues/159)) ([6a35cf7](6a35cf7)) * use `install` mode by default ([1a3db77](1a3db77)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0 (2022-12-28) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/mikjori/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * align every file ([96ec6a0](96ec6a0)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken deprecation message ([e3e74ac](e3e74ac)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * deploy to `adb` ([f9b987e](f9b987e)) * don't log when package is incompatible and `exclusive` option is used ([ad81a1b](ad81a1b)) * don't print same patch multiple times ([f4b0469](f4b0469)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * escape quotation mark in string ([6e21d81](6e21d81)) * exclude patcher dependency from minimizing ([d5794b9](d5794b9)) * fix noSuchMethodError ([00fec25](00fec25)) * **gitignore:** ignore `options.toml` ([ReVanced#158](https://github.com/mikjori/revanced-cli/issues/158)) ([7be9af0](7be9af0)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * invalid header when writing a `ZipFile` ([ReVanced#169](https://github.com/mikjori/revanced-cli/issues/169)) ([6e703eb](6e703eb)) * keystore file not found exception ([ReVanced#57](https://github.com/mikjori/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log not showing in CLI ([ReVanced#80](https://github.com/mikjori/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/mikjori/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/mikjori/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/mikjori/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * start with uppercase in log message ([ae91b0d](ae91b0d)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/mikjori/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * use correct prefix in log message ([1a67cd8](1a67cd8)) * use latest version of patches dependency ([029f1ad](029f1ad)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/mikjori/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/mikjori/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/mikjori/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/mikjori/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add CLI ([6664f49](6664f49)) * add logging back ([4a23cb6](4a23cb6)) * add option to specify keystore file path ([9331594](9331594)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/mikjori/revanced-cli/issues/42)) ([b977d70](b977d70)) * better output for excluded patches ([ReVanced#77](https://github.com/mikjori/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * check, if input file exists ([b6dff6d](b6dff6d)) * debugging option ([1b645c6](1b645c6)) * do not warn on incompatible packages ([39e377b](39e377b)) * handle unmounting deleted files ([ReVanced#148](https://github.com/mikjori/revanced-cli/issues/148)) ([3a733e5](3a733e5)) * improve logging ([df85fa3](df85fa3)) * improve missing compatibility annotation tracing log ([2c7eb72](2c7eb72)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * Patch Options CLI implementation ([ReVanced#132](https://github.com/mikjori/revanced-cli/issues/132)) ([3f5345a](3f5345a)) * remove extra zipalign step ([ReVanced#106](https://github.com/mikjori/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * remove unused option `-r` ([467d838](467d838)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * section `acknowledgements` for issue templates ([0e3ecc3](0e3ecc3)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/mikjori/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/mikjori/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * simplify log message ([74d73ca](74d73ca)) * support for `--install` ([d1ceab4](d1ceab4)) * trace logs when compatibility annotation is missing ([ReVanced#166](https://github.com/mikjori/revanced-cli/issues/166)) ([c590bf5](c590bf5)) * unmount all occurrences in `/proc/mounts` ([ReVanced#131](https://github.com/mikjori/revanced-cli/issues/131)) ([4f4e1f9](4f4e1f9)) * use `am` instead of `monkey` to launch the app ([ReVanced#159](https://github.com/mikjori/revanced-cli/issues/159)) ([6a35cf7](6a35cf7)) * use `install` mode by default ([1a3db77](1a3db77)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0 (2023-06-29) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/TanNhatCMS/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * align every file ([96ec6a0](96ec6a0)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken deprecation message ([e3e74ac](e3e74ac)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * bump patcher dependency version ([51c04b7](51c04b7)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * correct spelling mistake ([31fb316](31fb316)) * correctly word option descriptions ([ac3a8f6](ac3a8f6)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * deploy to `adb` ([f9b987e](f9b987e)) * do not list compatible packages if patches do not define them ([31e4a41](31e4a41)) * don't log when package is incompatible and `exclusive` option is used ([ad81a1b](ad81a1b)) * don't print same patch multiple times ([f4b0469](f4b0469)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * escape quotation mark in string ([6e21d81](6e21d81)) * exclude patcher dependency from minimizing ([d5794b9](d5794b9)) * fix noSuchMethodError ([00fec25](00fec25)) * **gitignore:** ignore `options.toml` ([ReVanced#158](https://github.com/TanNhatCMS/revanced-cli/issues/158)) ([7be9af0](7be9af0)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * invalid header when writing a `ZipFile` ([ReVanced#169](https://github.com/TanNhatCMS/revanced-cli/issues/169)) ([6e703eb](6e703eb)) * keystore file not found exception ([ReVanced#57](https://github.com/TanNhatCMS/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log not showing in CLI ([ReVanced#80](https://github.com/TanNhatCMS/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/TanNhatCMS/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/TanNhatCMS/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove duplicate options entries. ([d0fc886](d0fc886)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/TanNhatCMS/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * start with uppercase in log message ([ae91b0d](ae91b0d)) * **tests:** set order of tests ([2ef48af](2ef48af)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/TanNhatCMS/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * use correct prefix in log message ([1a67cd8](1a67cd8)) * use latest version of patches dependency ([029f1ad](029f1ad)) * use working JADB dependency version ([ReVanced#222](https://github.com/TanNhatCMS/revanced-cli/issues/222)) ([da2c918](da2c918)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/TanNhatCMS/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/TanNhatCMS/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/TanNhatCMS/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/TanNhatCMS/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * add appreciation message for new contributors ([6962fc2](6962fc2)) * Add CLI ([6664f49](6664f49)) * add logging back ([4a23cb6](4a23cb6)) * add option to specify keystore file path ([9331594](9331594)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/TanNhatCMS/revanced-cli/issues/42)) ([b977d70](b977d70)) * better output for excluded patches ([ReVanced#77](https://github.com/TanNhatCMS/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * check, if input file exists ([b6dff6d](b6dff6d)) * connect to first device if given device was not found ([6485e47](6485e47)) * debugging option ([1b645c6](1b645c6)) * do not warn on incompatible packages ([39e377b](39e377b)) * handle unmounting deleted files ([ReVanced#148](https://github.com/TanNhatCMS/revanced-cli/issues/148)) ([3a733e5](3a733e5)) * improve description of options ([ReVanced#185](https://github.com/TanNhatCMS/revanced-cli/issues/185)) ([b69e784](b69e784)) * improve logging ([df85fa3](df85fa3)) * improve missing compatibility annotation tracing log ([2c7eb72](2c7eb72)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * Patch Options CLI implementation ([ReVanced#132](https://github.com/TanNhatCMS/revanced-cli/issues/132)) ([3f5345a](3f5345a)) * remove extra zipalign step ([ReVanced#106](https://github.com/TanNhatCMS/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * remove option `--with-descriptions` ([07a423b](07a423b)) * remove unused option `-r` ([467d838](467d838)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * rip-lib and unsigned ([6195039](6195039)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * section `acknowledgements` for issue templates ([0e3ecc3](0e3ecc3)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/TanNhatCMS/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/TanNhatCMS/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * simplify log message ([74d73ca](74d73ca)) * support for `--install` ([d1ceab4](d1ceab4)) * trace logs when compatibility annotation is missing ([ReVanced#166](https://github.com/TanNhatCMS/revanced-cli/issues/166)) ([c590bf5](c590bf5)) * unmount all occurrences in `/proc/mounts` ([ReVanced#131](https://github.com/TanNhatCMS/revanced-cli/issues/131)) ([4f4e1f9](4f4e1f9)) * use `am` instead of `monkey` to launch the app ([ReVanced#159](https://github.com/TanNhatCMS/revanced-cli/issues/159)) ([6a35cf7](6a35cf7)) * use `install` mode by default ([1a3db77](1a3db77)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0 (2024-02-05) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/FiorenMas/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * Add missing punctuation in command description ([8210351](8210351)) * align every file ([96ec6a0](96ec6a0)) * also delete temporary files when uninstalling ([52c3be2](52c3be2)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken deprecation message ([e3e74ac](e3e74ac)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * bump patcher dependency version ([51c04b7](51c04b7)) * check for package compatibility at first ([9fe5a0b](9fe5a0b)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * Check, if mounting is possible ([3e13fb5](3e13fb5)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * correct spelling mistake ([31fb316](31fb316)) * Correct warning message ([ba573f7](ba573f7)) * correctly word option descriptions ([ac3a8f6](ac3a8f6)) * Create options if it does not exist when updating them ([ca809f0](ca809f0)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * Delete temporal files if it exists ([a022feb](a022feb)) * delete temporary files after root installation ([a3d8705](a3d8705)) * deploy to `adb` ([f9b987e](f9b987e)) * do not delete output file ([0f3e090](0f3e090)) * do not filter explicitly included patches ([a3d8f00](a3d8f00)) * do not list compatible packages if patches do not define them ([31e4a41](31e4a41)) * Do not sign if mounting ([578e16b](578e16b)) * do not use absolute path from custom AAPT2 binary option ([a9c2a5f](a9c2a5f)) * don't log when package is incompatible and `exclusive` option is used ([ad81a1b](ad81a1b)) * don't print same patch multiple times ([f4b0469](f4b0469)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * escape quotation mark in string ([6e21d81](6e21d81)) * exclude patcher dependency from minimizing ([d5794b9](d5794b9)) * Filter logs correctly ([43fc20d](43fc20d)) * filtration of patches malfunctioning ([2d5a7fd](2d5a7fd)) * fix noSuchMethodError ([00fec25](00fec25)) * fix running commands not running ([2c7fcaf](2c7fcaf)) * Fix typo ([ReVanced#300](https://github.com/FiorenMas/revanced-cli/issues/300)) ([9d96bb7](9d96bb7)) * format patches input ([bbb1a63](bbb1a63)) * **gitignore:** ignore `options.toml` ([ReVanced#158](https://github.com/FiorenMas/revanced-cli/issues/158)) ([7be9af0](7be9af0)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * invalid header when writing a `ZipFile` ([ReVanced#169](https://github.com/FiorenMas/revanced-cli/issues/169)) ([6e703eb](6e703eb)) * keystore file not found exception ([ReVanced#57](https://github.com/FiorenMas/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log correct options command ([ReVanced#262](https://github.com/FiorenMas/revanced-cli/issues/262)) ([96c196d](96c196d)) * Log logs with levels over warning to error output stream ([075f6ad](075f6ad)) * Log not showing in CLI ([ReVanced#80](https://github.com/FiorenMas/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/FiorenMas/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * Move file to output even when mounting ([59dfc98](59dfc98)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/FiorenMas/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only check once for patch options ([11c3a6c](11c3a6c)) * Only open files for reading and writing if writeable ([3846f72](3846f72)) * Only set options for filtered patches ([64d9127](64d9127)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * print original instead of kebab cased names ([5eaad33](5eaad33)) * print stack trace when a patch failed ([924c1f8](924c1f8)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove duplicate options entries. ([d0fc886](d0fc886)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/FiorenMas/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * specify correct class containing entry-point ([1fcc591](1fcc591)) * start with uppercase in log message ([ae91b0d](ae91b0d)) * **tests:** set order of tests ([2ef48af](2ef48af)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/FiorenMas/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * use correct option name ([f8972ea](f8972ea)) * use correct prefix in log message ([1a67cd8](1a67cd8)) * use latest version of patches dependency ([029f1ad](029f1ad)) * Use punctuation in option descriptions ([da4469f](da4469f)) * use working JADB dependency version ([ReVanced#222](https://github.com/FiorenMas/revanced-cli/issues/222)) ([da2c918](da2c918)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) * refactor!: restructure code ([07da528](07da528)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/FiorenMas/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/FiorenMas/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/FiorenMas/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/FiorenMas/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add `list-versions` command ([a974b8e](a974b8e)) * add appreciation message for new contributors ([6962fc2](6962fc2)) * Add CLI ([6664f49](6664f49)) * Add function to get the most common compatible version ([77d9173](77d9173)) * add install command ([0350b7f](0350b7f)) * add logging back ([4a23cb6](4a23cb6)) * Add option to filter patches to be listed by package name ([50c0f98](50c0f98)) * add option to specify keystore file path ([9331594](9331594)) * Add option to warn about patches not being found in supplied patch bundles ([e46d855](e46d855)) * add options command ([9edbbf3](9edbbf3)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * Add ReVanced Library subproject ([ReVanced#265](https://github.com/FiorenMas/revanced-cli/issues/265)) ([157278c](157278c)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/FiorenMas/revanced-cli/issues/42)) ([b977d70](b977d70)) * Allow selecting first Adb device, if none supplied automatically by updating dependencies ([e7c3d64](e7c3d64)) * better output for excluded patches ([ReVanced#77](https://github.com/FiorenMas/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * Check for missing integrations ([c93186f](c93186f)) * check, if input file exists ([b6dff6d](b6dff6d)) * connect to first device if given device was not found ([6485e47](6485e47)) * debugging option ([1b645c6](1b645c6)) * Do not format patch names ([80a8d88](80a8d88)) * do not warn on incompatible packages ([39e377b](39e377b)) * Exit application with CLI exit code ([36c6a6a](36c6a6a)) * Extend signing API ([592dc1c](592dc1c)) * handle unmounting deleted files ([ReVanced#148](https://github.com/FiorenMas/revanced-cli/issues/148)) ([3a733e5](3a733e5)) * Improve command line argument descriptions ([f9cf7d2](f9cf7d2)) * improve description of options ([ReVanced#185](https://github.com/FiorenMas/revanced-cli/issues/185)) ([b69e784](b69e784)) * improve logging ([df85fa3](df85fa3)) * improve missing compatibility annotation tracing log ([2c7eb72](2c7eb72)) * Improve option descriptions ([d5ea5a0](d5ea5a0)) * Include or exclude patches by their index in relation to supplied patch bundles ([b2055ce](b2055ce)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * List patches which are compatible with any app ([ReVanced#297](https://github.com/FiorenMas/revanced-cli/issues/297)) ([0139dfe](0139dfe)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * Log saved patched APK file path ([16109bd](16109bd)) * Log stacktrace in new line ([c67e3c7](c67e3c7)) * Make `--out´ option optional ([3765957](3765957)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * Patch Options CLI implementation ([ReVanced#132](https://github.com/FiorenMas/revanced-cli/issues/132)) ([3f5345a](3f5345a)) * properly make use of logging facade ([41898d7](41898d7)) * remove extra zipalign step ([ReVanced#106](https://github.com/FiorenMas/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * remove option `--with-descriptions` ([07a423b](07a423b)) * remove unused option `-r` ([467d838](467d838)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * rip-lib and unsigned ([2db4cba](2db4cba)) * rollback the default values of keystore alias and password to CLI v3.0 (compatible with old keystore) ([cc7ec55](cc7ec55)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * section `acknowledgements` for issue templates ([0e3ecc3](0e3ecc3)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/FiorenMas/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/FiorenMas/revanced-cli/issues/60)) ([52b3161](52b3161)) * show description when listing patches ([af32572](af32572)) * show full package name when listing patches ([ReVanced#240](https://github.com/FiorenMas/revanced-cli/issues/240)) ([7174364](7174364)) * Simplify command description ([3b3f7c7](3b3f7c7)) * simplify log message ([74d73ca](74d73ca)) * support for `--install` ([d1ceab4](d1ceab4)) * trace logs when compatibility annotation is missing ([ReVanced#166](https://github.com/FiorenMas/revanced-cli/issues/166)) ([c590bf5](c590bf5)) * unmount all occurrences in `/proc/mounts` ([ReVanced#131](https://github.com/FiorenMas/revanced-cli/issues/131)) ([4f4e1f9](4f4e1f9)) * use `am` instead of `monkey` to launch the app ([ReVanced#159](https://github.com/FiorenMas/revanced-cli/issues/159)) ([6a35cf7](6a35cf7)) * use `install` mode by default ([1a3db77](1a3db77)) * use better logging text ([b0e748d](b0e748d)) * use friendly descriptions ([3dd875d](3dd875d)) * use new patch naming convention ([f6c221d](f6c221d)) * Use ReVanced Library in ReVanced CLI ([7794327](7794327)) * use separate command to list patches ([b74213f](b74213f)) * use separate command to patch ([32da961](32da961)) * use separate command to uninstall ([c0cc909](c0cc909)) * use simpler log ([ba758f0](ba758f0)) * Word log message better ([6942b22](6942b22)) ### Performance Improvements * Do not check, if the options file exists twice ([e3c5550](e3c5550)) * Use a `HashSet` to check for included and excluded patches ([616d14f](616d14f)) * Use multiple threads for writing dex files ([28648a1](28648a1)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * This changes many signatures of existing APIs and adds new functions for signing * This changes the log handler signature * This introduces major changes to how ReVanced CLI is used from the command line. * Not backwards compatible, since a lot of classes where renamed.
# 1.0.0-dev.1 (2024-11-08) * refactor!: restructure code ([07da528](07da528)) ### Bug Fixes * `defaultExclude` unused ([2015c2a](2015c2a)) * `Main-Class` attribute pointing to wrong method ([6e82418](6e82418)) * `ZipAligner` not correctly calculating the file offset ([2975a47](2975a47)) * add back in: option to specify keystore file path ([c94471f](c94471f)) * add callback for addFiles ([87ffaa4](87ffaa4)) * add execute permission to `./gradlew` file ([ReVanced#36](https://github.com/E85Addicts/revanced-cli/issues/36)) ([072d9e1](072d9e1)) * Add missing punctuation in command description ([8210351](8210351)) * align every file ([96ec6a0](96ec6a0)) * also delete temporary files when uninstalling ([52c3be2](52c3be2)) * breaking changes by `revanced-patcher` dependency ([51d2504](51d2504)) * broken control flow of `includeFilter` ([a0644c7](a0644c7)) * broken deprecation message ([e3e74ac](e3e74ac)) * broken script `CONTENT_UNMOUNT_SCRIPT` ([be53e64](be53e64)) * Bump dependencies to support BCS keystore ([1c10a77](1c10a77)) * bump patcher dependency version ([51c04b7](51c04b7)) * Check for null when no device serial was specified ([1da8ae9](1da8ae9)) * check for package compatibility at first ([9fe5a0b](9fe5a0b)) * check for root even though when not needed ([0d7581a](0d7581a)) * check if `packageVersion` is compatible with any from `compatiblePackages` ([32589c8](32589c8)) * Check, if mounting is possible ([3e13fb5](3e13fb5)) * ClassLoader not working with Java 9+ ([3a11e11](3a11e11)) * CLI not working ([29105ba](29105ba)) * Copy APK to output path when it is not being signed ([366f400](366f400)) * correct spelling mistake ([31fb316](31fb316)) * Correct warning message ([ba573f7](ba573f7)) * correctly word option descriptions ([ac3a8f6](ac3a8f6)) * Create options if it does not exist when updating them ([ca809f0](ca809f0)) * delete `outputFile` after deploying ([329f8a3](329f8a3)) * Delete temporal files if it exists ([a022feb](a022feb)) * delete temporary files after root installation ([a3d8705](a3d8705)) * deploy to `adb` ([f9b987e](f9b987e)) * do not delete output file ([0f3e090](0f3e090)) * do not filter explicitly included patches ([a3d8f00](a3d8f00)) * do not list compatible packages if patches do not define them ([31e4a41](31e4a41)) * Do not sign if mounting ([578e16b](578e16b)) * do not use absolute path from custom AAPT2 binary option ([a9c2a5f](a9c2a5f)) * don't log when package is incompatible and `exclusive` option is used ([ad81a1b](ad81a1b)) * don't print same patch multiple times ([f4b0469](f4b0469)) * dummy publish task (1/2) [skip ci] ([afff4c8](afff4c8)) * escape quotation mark in string ([6e21d81](6e21d81)) * exclude patcher dependency from minimizing ([d5794b9](d5794b9)) * Filter logs correctly ([43fc20d](43fc20d)) * filtration of patches malfunctioning ([2d5a7fd](2d5a7fd)) * fix noSuchMethodError ([00fec25](00fec25)) * fix running commands not running ([2c7fcaf](2c7fcaf)) * Fix typo ([ReVanced#300](https://github.com/E85Addicts/revanced-cli/issues/300)) ([9d96bb7](9d96bb7)) * format patches input ([bbb1a63](bbb1a63)) * **gitignore:** ignore `options.toml` ([ReVanced#158](https://github.com/E85Addicts/revanced-cli/issues/158)) ([7be9af0](7be9af0)) * gradle build script ([6ffba3e](6ffba3e)) * gradle sync dependencies ([407efdc](407efdc)) * improper use of mount variable ([31853fe](31853fe)) * invalid code flow when adding patches ([206f202](206f202)) * invalid header when writing a `ZipFile` ([ReVanced#169](https://github.com/E85Addicts/revanced-cli/issues/169)) ([6e703eb](6e703eb)) * keystore file not found exception ([ReVanced#57](https://github.com/E85Addicts/revanced-cli/issues/57)) ([5b8537e](5b8537e)) * leftover TODOs ([5b1139c](5b1139c)) * Log correct options command ([ReVanced#262](https://github.com/E85Addicts/revanced-cli/issues/262)) ([96c196d](96c196d)) * Log logs with levels over warning to error output stream ([075f6ad](075f6ad)) * Log not showing in CLI ([ReVanced#80](https://github.com/E85Addicts/revanced-cli/issues/80)) ([d9c5a17](d9c5a17)), closes [ReVanced#79](https://github.com/E85Addicts/revanced-cli/issues/79) * Make clear what the --exclusive command actually does ([a26b0ea](a26b0ea)) * Make CLI ArgGroup non-exclusive to be able to disable and enable patches at the same time ([1bb0d13](1bb0d13)) * make cli compatible with breaking changes of the patcher ([555b38f](555b38f)) * make integrations optional ([bea8b82](bea8b82)) * Make patches selectable by using a mutable collection for the selection option ([751fa1d](751fa1d)) * Make the patch command work without specifying any selection ([ba159a3](ba159a3)) * migrate from `PatchLoader.load(...)` to `JarPatchBundle(...).loadPatches()` ([cabd32f](cabd32f)) * migrate to changes of patcher ([b30c737](b30c737)) * migrate to latest patcher api changes ([ace70e4](ace70e4)) * missing implementation ([48102c6](48102c6)) * mount bind revanced.apk from magisk's mirror ([372470c](372470c)) * Move file to output even when mounting ([59dfc98](59dfc98)) * move the keystore to the output directory ([6ceb449](6ceb449)) * null exception when resource patching is disabled ([ReVanced#85](https://github.com/E85Addicts/revanced-cli/issues/85)) ([125fa06](125fa06)) * only accept directories when looking for files in resource patch ([c76da7e](c76da7e)) * only check once for patch options ([11c3a6c](11c3a6c)) * Only open files for reading and writing if writeable ([3846f72](3846f72)) * Only set options for filtered patches ([64d9127](64d9127)) * only upload `-all.jar` asset ([ca8e1ba](ca8e1ba)) * overwrite output file ([2bfbbc2](2bfbbc2)) * Print in new line correctly ([c2dc9d7](c2dc9d7)) * print original instead of kebab cased names ([5eaad33](5eaad33)) * print stack trace when a patch failed ([924c1f8](924c1f8)) * releases (2/2) ([227d8d9](227d8d9)) * remove `-e` from `experimental` option ([3829136](3829136)) * remove `excludePatches` check ([eb83cab](eb83cab)) * remove duplicate options entries. ([d0fc886](d0fc886)) * remove logger from Signer.kt ([51e091c](51e091c)) * remove requirement for solution [skip ci] ([ReVanced#108](https://github.com/E85Addicts/revanced-cli/issues/108)) ([0ce680a](0ce680a)) * resolve signatures before applying patches ([c9941fe](c9941fe)) * resource patcher ([9da4f70](9da4f70)) * show actual version in CLI ([1dcdbc9](1dcdbc9)) * Show path for missing files instead of just the name ([f0f3e56](f0f3e56)) * Sign APKs correctly ([5ff105c](5ff105c)) * sign the aligned file instead of the input file ([22d2535](22d2535)) * specify correct class containing entry-point ([1fcc591](1fcc591)) * start with uppercase in log message ([ae91b0d](ae91b0d)) * **tests:** set order of tests ([2ef48af](2ef48af)) * this tiny thing has caused me the worst headache ever in my life ([a37304e](a37304e)) * uncomment merging integrations ([f2d9da4](f2d9da4)) * unfinished todo message ([fb068ef](fb068ef)) * unmount script `CONTENT_UMOUNT_SCRIPT` ([3a2fa30](3a2fa30)) * update cli for new patcher version ([9fc2f96](9fc2f96)) * update patcher to 1.2.5 ([055c282](055c282)) * update patcher version ([499ce0a](499ce0a)) * update patcher version ([0df936e](0df936e)) * update patcher version ([80c11fe](80c11fe)) * update patcher version ([09b9027](09b9027)), closes [ReVanced#45](https://github.com/E85Addicts/revanced-cli/issues/45) * update patcher version (fix apktool) ([496f821](496f821)) * use absolute file path for key store ([d335846](d335846)) * Use correct option description ([45a2ffa](45a2ffa)) * use correct option name ([f8972ea](f8972ea)) * use correct prefix in log message ([1a67cd8](1a67cd8)) * use latest version of patches dependency ([029f1ad](029f1ad)) * Use punctuation in option descriptions ([da4469f](da4469f)) * Use the first connected device when no ADB device is specified ([5f952f3](5f952f3)) * use working JADB dependency version ([ReVanced#222](https://github.com/E85Addicts/revanced-cli/issues/222)) ([da2c918](da2c918)) * wrong keystore output path ([20fa179](20fa179)) * wrong label in additional items [skip ci] ([cd3ded1](cd3ded1)) * wrong separator when using `ZipFileSystemUtils` ([20e15de](20e15de)) * wrong use of dependency to `revanced-patches` ([351de6c](351de6c)) * wrong use of variable substitution / typo ([81d53b5](81d53b5)), closes [ReVanced#12](ReVanced#12) * wrong variable inverted ([f694542](f694542)) ### Code Refactoring * migrate from `Signature` to `Fingerprint` ([88852a4](88852a4)) ### Features * `--custom-aapt2-binary` option ([ReVanced#104](https://github.com/E85Addicts/revanced-cli/issues/104)) ([d8dbffd](d8dbffd)) * `--exclusive` switch ([ReVanced#78](https://github.com/E85Addicts/revanced-cli/issues/78)) ([8e91c12](8e91c12)) * `--include` option ([ReVanced#76](https://github.com/E85Addicts/revanced-cli/issues/76)) ([57a1e7c](57a1e7c)) * `--uninstall` switch ([ReVanced#84](https://github.com/E85Addicts/revanced-cli/issues/84)) ([131100e](131100e)) * `frameworkFolderLocation` patcher option ([bc17298](bc17298)) * Add `list-versions` command ([a974b8e](a974b8e)) * add appreciation message for new contributors ([6962fc2](6962fc2)) * Add CLI ([6664f49](6664f49)) * Add function to get the most common compatible version ([77d9173](77d9173)) * add install command ([0350b7f](0350b7f)) * add logging back ([4a23cb6](4a23cb6)) * Add option to filter patches to be listed by package name ([50c0f98](50c0f98)) * add option to specify keystore file path ([9331594](9331594)) * Add option to warn about patches not being found in supplied patch bundles ([e46d855](e46d855)) * add options command ([9edbbf3](9edbbf3)) * add path for `cacheDirectory` and enable resource patching by default ([54c0a03](54c0a03)) * Add progress bar ([8d96ec8](8d96ec8)) * Add ReVanced Library subproject ([ReVanced#265](https://github.com/E85Addicts/revanced-cli/issues/265)) ([157278c](157278c)) * add semantic-release ([78d7aa3](78d7aa3)) * Added root-only adb runner (tested on emulator) ([37ecc5e](37ecc5e)) * allow listing patches without other parameters ([ReVanced#42](https://github.com/E85Addicts/revanced-cli/issues/42)) ([b977d70](b977d70)) * Allow selecting first Adb device, if none supplied automatically by updating dependencies ([e7c3d64](e7c3d64)) * better output for excluded patches ([ReVanced#77](https://github.com/E85Addicts/revanced-cli/issues/77)) ([ac7c7a9](ac7c7a9)) * chcon on mount ([e1c7d10](e1c7d10)) * Check for missing integrations ([c93186f](c93186f)) * check, if input file exists ([b6dff6d](b6dff6d)) * connect to first device if given device was not found ([6485e47](6485e47)) * debugging option ([1b645c6](1b645c6)) * Do not format patch names ([80a8d88](80a8d88)) * do not warn on incompatible packages ([39e377b](39e377b)) * Exit application with CLI exit code ([36c6a6a](36c6a6a)) * Extend signing API ([592dc1c](592dc1c)) * handle unmounting deleted files ([ReVanced#148](https://github.com/E85Addicts/revanced-cli/issues/148)) ([3a733e5](3a733e5)) * Improve command line argument descriptions ([f9cf7d2](f9cf7d2)) * improve description of options ([ReVanced#185](https://github.com/E85Addicts/revanced-cli/issues/185)) ([b69e784](b69e784)) * improve logging ([df85fa3](df85fa3)) * improve missing compatibility annotation tracing log ([2c7eb72](2c7eb72)) * Improve option descriptions ([d5ea5a0](d5ea5a0)) * Include or exclude patches by their index in relation to supplied patch bundles ([b2055ce](b2055ce)) * integrations merge ([919b34e](919b34e)) * issue templates [skip ci] ([bac8c67](bac8c67)) * List patches which are compatible with any app ([ReVanced#297](https://github.com/E85Addicts/revanced-cli/issues/297)) ([0139dfe](0139dfe)) * load patches dynamically & use kotlinx.cli ([4624384](4624384)) * Log saved patched APK file path ([16109bd](16109bd)) * Log stacktrace in new line ([c67e3c7](c67e3c7)) * Make `--out´ option optional ([3765957](3765957)) * migrate logger to `slf4j` ([6c4c192](6c4c192)) * more efficient zipalign ([a942a57](a942a57)) * Patch Options CLI implementation ([ReVanced#132](https://github.com/E85Addicts/revanced-cli/issues/132)) ([3f5345a](3f5345a)) * properly make use of logging facade ([41898d7](41898d7)) * Remove deprecated CLI options ([48a1a39](48a1a39)) * remove extra zipalign step ([ReVanced#106](https://github.com/E85Addicts/revanced-cli/issues/106)) ([c8e793e](c8e793e)) * remove option `--with-descriptions` ([07a423b](07a423b)) * remove unused option `-r` ([467d838](467d838)) * rename `debugging` option to `experimental` ([98bd6f3](98bd6f3)) * run `release.yml` workflow on branch `dev` ([9a64730](9a64730)) * section `acknowledgements` for issue templates ([0e3ecc3](0e3ecc3)) * separate logger to stdout & stderr ([ReVanced#63](https://github.com/E85Addicts/revanced-cli/issues/63)) ([0ddc2b5](0ddc2b5)) * separate options for `--list` ([ReVanced#60](https://github.com/E85Addicts/revanced-cli/issues/60)) ([52b3161](52b3161)) * Set patch options via CLI ([ReVanced#336](https://github.com/E85Addicts/revanced-cli/issues/336)) ([2300243](2300243)) * show description when listing patches ([af32572](af32572)) * Show error about no installation device found at the beginning ([3300e6b](3300e6b)) * show full package name when listing patches ([ReVanced#240](https://github.com/E85Addicts/revanced-cli/issues/240)) ([7174364](7174364)) * Simplify command and option names and descriptions ([ReVanced#338](https://github.com/E85Addicts/revanced-cli/issues/338)) ([6e7797a](6e7797a)) * Simplify command description ([3b3f7c7](3b3f7c7)) * simplify log message ([74d73ca](74d73ca)) * Simplify option descriptions ([45c998b](45c998b)) * support for `--install` ([d1ceab4](d1ceab4)) * trace logs when compatibility annotation is missing ([ReVanced#166](https://github.com/E85Addicts/revanced-cli/issues/166)) ([c590bf5](c590bf5)) * unmount all occurrences in `/proc/mounts` ([ReVanced#131](https://github.com/E85Addicts/revanced-cli/issues/131)) ([4f4e1f9](4f4e1f9)) * use `am` instead of `monkey` to launch the app ([ReVanced#159](https://github.com/E85Addicts/revanced-cli/issues/159)) ([6a35cf7](6a35cf7)) * use `install` mode by default ([1a3db77](1a3db77)) * use better logging text ([b0e748d](b0e748d)) * use friendly descriptions ([3dd875d](3dd875d)) * Use more consistent option name ([223629c](223629c)) * use new patch naming convention ([f6c221d](f6c221d)) * Use ReVanced Library in ReVanced CLI ([7794327](7794327)) * use separate command to list patches ([b74213f](b74213f)) * use separate command to patch ([32da961](32da961)) * use separate command to uninstall ([c0cc909](c0cc909)) * use simpler log ([ba758f0](ba758f0)) * Word log message better ([6942b22](6942b22)) ### Performance Improvements * --rip-lib and --unsigned ([0026a49](0026a49)) * Do not check, if the options file exists twice ([e3c5550](e3c5550)) * Personal Sync Upstream ([a615944](a615944)) * Use a `HashSet` to check for included and excluded patches ([616d14f](616d14f)) * Use multiple threads for writing dex files ([28648a1](28648a1)) ### Reverts * feat: remove extra zipalign step ([c3d8fec](c3d8fec)) ### BREAKING CHANGES * Options have been renamed. * This commit changes various CLI options and removes the `options.json` file. Instead, patch options can now be passed via CLI options * This changes many signatures of existing APIs and adds new functions for signing * This changes the log handler signature * This introduces major changes to how ReVanced CLI is used from the command line. * Not backwards compatible, since a lot of classes where renamed.
My implementation of #62 added two loggers where one use StreamHandler with stdout to separate output of different values to different pipes (stdout and stderr).
But it seems that stdout logger wasn't flushed properly.
This PR should fix it by introducing FlushingStreamHandler which flushes after every log message.
This PR was not yet tested, because currently I can't test it, but I will do so as soon as possible (probably in 24 hours)