-
-
Notifications
You must be signed in to change notification settings - Fork 217
Description
Feature description
Improve utility uninstall output & argument validation. Current exit code & stdout messages always imply the operation was successful (and that anything was done at all).
- Example one: phone not connected to PC:
$ java -jar revanced-cli-5.0.1-all.jar utility uninstall --package-name com.no.such.pkg --unmount
SEVERE: app.revanced.library.installation.installer.DeviceNotFoundException: No ADB device found
INFO: Uninstalled the patched APK file- Example two: adb link exists, but unmounting a nonexisting package:
$ java -jar revanced-cli-5.0.1-all.jar utility uninstall --package-name com.no.such.pkg --unmount
WARNING: No device serial supplied. Using device with serial b7a7a89a
INFO: Uninstalling com.no.such.pkg by unmounting
INFO: Uninstalled the patched APK fileSame happens with existing packages that were not mounted to begin with.
Also it's not limited to --unmount option - uninstall operation without it always appear to succeed the same.
It would be useful if there were validation done whether the package:
- we're operating on is installed;
- is even mounted - if not,
--unmountoperation should error out;
Basically, process should exit with 0 only if the requested operation was actually performed & successful.
Motivation
Appropriate exit code & stdout/stderr messages make it easier too detect user error. Easy to make typos with longer package names, and if exit code & messaging is always successful, it's hard to tell whether intended action was completed.
Arguably it's also a bug if it always prints INFO: Uninstalled the patched APK file, even if package isn't installed.
Acknowledgements
- I have checked all open and closed feature requests and this is not a duplicate.
- I have chosen an appropriate title.
- All requested information has been provided properly.