I took a stab at doing some refactoring and it appears to work fine. I replaced the shell=True calls (they are not needed with this, perhaps on Windows they where) and added a call wrapper to print what is currently running.
I made all the call calls use arrays, which gets around the quoting issues that you experience if you use shell=true and manually concatenate strings together.
I got rid of the hard-coded ************* headers for each stage and added a function that deals with them dynamically. I also ran an auto-formatter on the code to make it more pythonic, hence the horrible diff. Sorry!
Give it a test and if it's OK then merge 👍 feel free to ask me any questions
Currently this doesn't work with APK's that have a space in them. No big deal I guess, but I figured I would try and refactor the code to use subprocess.call properly rather than just concating strings everywhere.~
Edit: also, thanks for this script, it's pretty damn good!
I took a stab at doing some refactoring and it appears to work fine. I replaced the
shell=True
calls (they are not needed with this, perhaps on Windows they where) and added acall
wrapper to print what is currently running.I made all the
call
calls use arrays, which gets around the quoting issues that you experience if you useshell=true
and manually concatenate strings together.I got rid of the hard-coded
*************
headers for each stage and added a function that deals with them dynamically. I also ran an auto-formatter on the code to make it more pythonic, hence the horrible diff. Sorry!Grab a copy of the script from my branch here: https://github.com/orf/apk2java-linux/blob/patch-1/apk2java.py
Give it a test and if it's OK then merge 👍 feel free to ask me any questions
Currently this doesn't work with APK's that have a space in them. No big deal I guess, but I figured I would try and refactor the code to use~subprocess.call
properly rather than just concating strings everywhere.Edit: also, thanks for this script, it's pretty damn good!